社区
C#
帖子详情
==========在delphi中有一个CreateWnd,在c#中对应哪个?==================
a9a9a9
2002-05-27 10:53:44
我原来用delphi时,做过一个空件.在CreateWnd中做了些事情.想把它移植到c#中来.但不知这个东东在c#中叫什么?
应该是在创建窗口句柄时触发.
...全文
78
2
打赏
收藏
==========在delphi中有一个CreateWnd,在c#中对应哪个?==================
我原来用delphi时,做过一个空件.在CreateWnd中做了些事情.想把它移植到c#中来.但不知这个东东在c#中叫什么? 应该是在创建窗口句柄时触发.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lonk
2002-05-27
打赏
举报
回复
响应Form的HandleCreated或者Load事件。
VegetableBird
2002-05-27
打赏
举报
回复
这需要看你的用户控件创建时所进行的操作。
一般说来,有几个方法可以帮你初始化控件属性:
1、构造函数
2、重载UserControl.OnCreate
3、UserControl.Load事件
4、重载最接近CreateWnd的方法:CreateHandle
不用第三方控件,让richEdit支持图片与表格换行
不用第三方控件,让richEdit支持图片与表格换行
DELPHI
6 提供的RICHEDIT是1.0,并不支持图片,对复杂表格也会乱成一团,如何在
DELPHI
原有控件的基础上做少量修改,使之支持显示图片与正确显示表格,其实只需要几行就好了,方法如下: 找到richEdit控件所在单元ComCtrls.pas (在SOURCE\VCL) //第一步 procedure TCustomRichEdit.
Create
Params(var Params: T
Create
Params); const // RichEditModuleName = 'RICHED32.DLL';//原来语句 // RichEditClassName = 'RICHEDIT'; //原来语句 RichEditModuleName = 'Msftedit.dll'; //改后语句 RichEditClassName = 'RichEdit50W'; //改后语句 //第二步 procedure TCustomRichEdit.
Create
Wnd
; .... //加入一行要放在
Create
Wnd
因为此时 HANDLE已建立 Perform(EM_SetOleCallback, 0, Longint(TRichEditOleCallback.
Create
(TRichEdit(self)) as IRichEditOleCallback)) ; ......
一个
可用供VB、VC调用的摄像头视频捕捉DLL
可用来在VB,VC
中
驱动摄像头,进行静帧捕捉的DLL动态链接库(必须要有摄像头生成StillCap0000.bmp):将MyDll文件解压后把MyDll.dll与MyDll.lib一起拷入工程DEBUG目录
中
(为保险起见DEBUG的外层目录也拷贝一份吧),另有
一个
VC++6的测试工程test_Dll,已经考入相应DLL和LIB文件,可直接编译运行,VB只拷贝MyDll.dll与MyDll.lib VB2008 调用方法,在公共模块
中
声名: Public Declare Function
Create
Wnd
Lib "MyDll" () As Double Public Declare Function ClearGraphs Lib "MyDll" () As Double Public Declare Function OnpStillCapture Lib "MyDll" (ByVal h
wnd
As Long) As Double Public Declare Function InitStillGraph Lib "MyDll" (ByVal h
wnd
As Long) As Double Public Declare Function Close
Wnd
Lib "MyDll" () As Double 在窗体上放置2个PictureBox控件,名字为:pic1,pic2 放置三个按键:名字为Btn1,Btn2,Btn3 Btn1为打开视频,调用代码: Private Sub Btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn1.Click InitStillGraph(pic1.Handle) '打开摄像头预览视频 end sub Btn2为截取视频保存为BMP,文件保存在应用程序路径下,调用代码: Private Sub Btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn2.Click OnpStillCapture(pic2.Handle) '截取预览视频一帧图像 end sub Btn3为截取视频保存为清除内存,调用代码: Private Sub Btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn3.Click ClearGraphs() '退出前,完成内存清扫工 end sub VC调用方法: 在对话框上放置两个图像框,类型为位图,三个按键B1,B2,B3 定义全局函数引用: typedef H
WND
(*
Create
Wnd
)(void);// typedef HRESULT(* InitStillGraph)(H
WND
h
wnd
); typedef void (* OnpStillCapture)(H
WND
h
wnd
); typedef int (* ClearGraphs)(); HINSTANCE glibsample; //如果定义成HANDLE类型,则出错
Create
Wnd
create
wnd
; InitStillGraph initStillGraph;//定义引用函数 OnpStillCapture onpStillCapture;//定义引用函数 ClearGraphs clearGraphs;//定义引用函数 用类向导为两个位图框建立控件(类型为Contorl)变量,m_p1,m_2 : 在窗口OnInitDialog()函数
中
调整图像框大小: // TODO: Add your specialized code here and/or call the base class m_p1.MoveWindow(0,0,200,200,true); m_p2.MoveWindow(210,0,200,200,true); glibsample=LoadLibrary("MyDll.dll"); //加载dll 在B1消息函数
中
: void 你的类::OnB1() { initStillGraph=(InitStillGraph)GetProcAddress(glibsample,"InitStillGraph"); (*initStillGraph)(m_p1.m_h
Wnd
);//预览图像 } 在B2消息函数
中
: void 你的类::O
vc 实现饼图
vc MFC 实现饼图 class CChart
Wnd
: public C
Wnd
{ // public: void Init(); BOOL
Create
Wnd
(LPCTSTR pTitle, RECT ▭,C
Wnd
* pParent
Wnd
=NULL); //增加一项 void AddPie(tagPieInfo PieInfo); //删除一项 void ReMoveAt(int index); //删除所有 void ReMoveAll(); //设置每一项fVaule的值为0.0 void SetPieVauleInit(); //设置指定项的fVaule值 void SetVauleAt(int index,double fVaule); //设置指定项的color值 void SetColorAt(int index,COLORREF color); //设置指定项的strKey值 void SetKeyAt(int index,CString strKey); void SetBkColor(COLORREF colorBK,BOOL bRefrash = TRUE); void SetDrawType(DRAW_TYPE nDrawType); public: void DrawZhuZhuangTu(CDC* pDc); void DrawBingTu(CDC* pDc); public: CChart
Wnd
(); virtual ~CChart
Wnd
();
MsgInfo V1.00 察看当前进程
中
消息的控件
MsgInfo V1.00(一)、说明
一个
用来察看当前进程
中
消息的控件,D6环境编译。(二)、属性1、ShowType: MSGHex: 是否显示消息ID(16进制) MSGDec: 是否显示消息ID(10进制) MSGStr: 是否显示消息ID(字符串) MsgClassName:是否显示窗体类名 MsgH
wnd
: 是否显示窗体句柄 MsgWParam: 是否显示消息WParam值 MsgLParam: 是否显示消息LParam值2、DefineClassName: 允许(禁止)显示消息的窗体类名,如TForm13、DefineMsg: 允许(禁止)显示的消息ID,如$0005、wm_paint4、DefineState: EnableMsg: DefineMsg不为空串时,False禁止显示加入DefineMsg的消息,True只显示加入DefineMsg的消息 EnableClassName: DefinClassName不为空串时,False禁止显示加入DefineClassName的消息,True只显示加入DefineMsg的消息 EnableH
wnd
: 设置了AddDefineH
wnd
后,False禁止显示ADDDefineH
wnd
加入的窗体句柄消息,True则只显示加入的窗体句柄消息 EnableClassName和EnableH
wnd
设置不一致时,以EnableClassName为准5、DisableFrequent:是否过滤掉WM_NCHITTEST、WM_SETCURSOR、WM_ENTERIDLE、WM_NOTIFY出现频繁的消息6、HookType: 设置钩子类型7、Activate: 是否激活钩子(三)、方法1、AddDefineH
wnd
(): 加入的句柄为允许(禁止)显示消息的窗体句柄(可加入多个)2、Clear: 清空消息信息(四)、事件HookMethod: 可以在此事件
中
自行处理钩子,钩子返回值Result默认为0 注意在处理CBT钩子的HCBT_
Create
Wnd
时,设计期拖放到窗体的控件还未创建,使用这些控件的属性和方法会出现异常。 (五)、文件MsgInfo.txt是参考文件,必须放入执行程序当前目录。此文件可自定义或扩充,无需排序格式:第一行表示消息ID的十六进制字符串,如$0005,必须$开头 第二行表示消息ID的字符串常量,如WM_Size 第三行表示该消息的说明(可省略)MsgResult.txt显示结果(六)、制作双元软件工作室http://shuangyuan.wx-e.com/
C++轻量级通用插件框架源码
代号为X3的C++轻量级通用插件框架平台是一套通用的C++轻量级插件体系,由多个独立插件模块组成。应用程序可以基于X3插件框架进行快速开发,X3插件框架
中
的插件既可以单独使用,又可以灵活组合使用。X3插件框架采用VC++开发,没有使用MFC、ATL、COM,已经过3年十几个系统的实际使用验证。 目前X3插件框架包括插件内核部分(插件基础、插件管理器、Observer管理器插件、日志管理器插件)和实用技术插件(XML读写封装插件、数据库操作封装插件、文件操作实用插件、文本操作实用插件、本地化字符串表插件等)。 X3插件框架的特点有: a) 接口定义简单灵活 采用普通的C++接口,即由纯虚函数组成的结构体,不需要特殊的基类,不需要宏和UUID申明;同时可以使用C++的各种变量类型,不受COM接口那样的约束。例如下面的接口Ix_定义: interface Ix_Example { virtual void Foo() = 0; virtual void* GetData(std::vector& items) = 0; }; b) 接口与实现分离 对外提供接口文件,在插件内部用类来实现
一个
或多个接口,不需要对外导出该类或暴露实现细节。这样还有
一个
好处是只有约定了接口就可以让多个模块并行开发,模块相互之间不存在编译依赖(不需要其他插件的LIB等文件),这可用于测试驱动开发模式。 c) 多接口转换、引用计数管理 采用智能指针类来管理接口的引用计数及生命期,可从
一个
接口动态转换为另
一个
接口(内部采用C++的RTTI机制动态转换),可以区分插件内部的接口引用和插件外部的接口引用。 d) 模块透明部署
一个
模块只需要使用其他模块的接口,不需要关心该接口是在哪个插件
中
实现的。可以根据需要将各个实现类进行合并或拆分,使其分布到不同插件
中
,而接口使用者不受影响。另外,插件部署于哪个目录也不影响插件接口的使用。 e) 模块可替换、可扩展 可根据需要替换某个插件,只有该插件实现了相同的接口,即使内部功能不相同,这样就实现了插件可替换、按需组合。通过在新的插件
中
支持更多的接口,可扩展更多的功能。可以在新插件
中
局部替换原有插件的某些接口或部分函数,实现重用和扩展。 f) 线程安全性 本插件机制所提供的内部实现文件考虑了线程安全性,允许多线程访问而不冲突,同时采用的是轻量级的锁定机制(计数原子锁定),运行开销很小。 g) 跨版本 允许不同版本的VC++开发的插件相互调用对方的接口,虽然实际
中
一般不需要这样做。由于没有采用VC++特殊的编译指令,因此容易移植到其他开发平台下。 编译运行环境 本插件机制采用C++实现,用到了C++的RTTI机制和少量Windows API函数,没有使用MFC、ATL、STL,没有使用LIB文件,外部依赖文件少,没有使用VC++特殊编译指令。 编译环境为Visual C++ 6.0/2003/2005/2008/2010,其他C++开发平台下待测试(从实现原理上看应该没问题)。 运行环境为Windows 2000及以后的操作系统,Windows 98需要安装UNICODE支持包。 X3插件框架目前在局部范围内开放源码,还未在公共开源网站范围正式开放。可以学习研究、任意修改改进,但不可以换成其他作者另外发布,转载时请列出来源。 有改进意见可在博客地址或者邮件
中
提出。 博客:http://www.cnblogs.com/rhcad 邮件:rhcad@hotmail.com 详细描述见 http://www.cnblogs.com/rhcad/archive/2010/09/27/1836943.html 附件内容: .\Product_vc100.sln .\Product_vc60.dsw .\Product_vc80.sln .\Product_vc90.sln .\Code ------\pkg_Core ------\pkg_Example ------\pkg_UnitTest ------\pkg_Core\Interface ------\pkg_Core\Modules ------\pkg_Core\Interface\AppUI ------\pkg_Core\Interface\ChangeObserver ------\pkg_Core\Interface\Ix_Object.h ------\pkg_Core\Interface\Ix_ObjectFactory.h ------\pkg_Core\Interface\Log ------\pkg_Core\Interface\Module ------\pkg_Core\Interface\PluginManager ------\pkg_Core\Interface\UtilFunc ------\pkg_Core\Interface\Utility ------\pkg_Core\Interface\XComPtr.h ------\pkg_Core\Interface\Xml ------\pkg_Core\Interface\AppUI\CmdMsgObserverSimple.h ------\pkg_Core\Interface\AppUI\Cx_
Create
Wnd
.h ------\pkg_Core\Interface\AppUI\Ix_
Create
Wnd
.h ------\pkg_Core\Interface\AppUI\RawCmdMsgObserver.h ------\pkg_Core\Interface\ChangeObserver\ChangeNotifyData.h ------\pkg_Core\Interface\ChangeObserver\Ix_ChangeManager.h ------\pkg_Core\Interface\ChangeObserver\Ix_ChangeObserver.h ------\pkg_Core\Interface\Log\DebugR.cpp ------\pkg_Core\Interface\Log\DebugR.h ------\pkg_Core\Interface\Log\ILogObserver.h ------\pkg_Core\Interface\Log\Ix_LogManager.h ------\pkg_Core\Interface\Log\LogHelper.h ------\pkg_Core\Interface\Module\Cx_Module.h ------\pkg_Core\Interface\Module\Cx_Object.h ------\pkg_Core\Interface\Module\Cx_SimpleObject.h ------\pkg_Core\Interface\Module\Cx_SingletonObject.h ------\pkg_Core\Interface\Module\Ix_Module.h ------\pkg_Core\Interface\Module\XClassItem.h ------\pkg_Core\Interface\Module\XModuleImpl.h ------\pkg_Core\Interface\Module\XModuleItem.h ------\pkg_Core\Interface\Module\XModuleMacro.h ------\pkg_Core\Interface\PluginManager\Ix_PluginLoader.h ------\pkg_Core\Interface\PluginManager\PluginManager.h ------\pkg_Core\Interface\PluginManager\XComCreator.h ------\pkg_Core\Interface\UtilFunc\AutoNew.h ------\pkg_Core\Interface\UtilFunc\ConvStr.h ------\pkg_Core\Interface\UtilFunc\ctrim.h ------\pkg_Core\Interface\UtilFunc\func_s.h ------\pkg_Core\Interface\UtilFunc\LockCount.h ------\pkg_Core\Interface\UtilFunc\LockSyn.h ------\pkg_Core\Interface\UtilFunc\ReadInts.h ------\pkg_Core\Interface\UtilFunc\RelToAbs.h ------\pkg_Core\Interface\UtilFunc\RoundStr.h ------\pkg_Core\Interface\UtilFunc\SafeCall.h ------\pkg_Core\Interface\UtilFunc\ScanFiles.h ------\pkg_Core\Interface\UtilFunc\SysErrStr.h ------\pkg_Core\Interface\UtilFunc\vecfunc.h ------\pkg_Core\Interface\UtilFunc\vecptr.h ------\pkg_Core\Interface\Utility\ClsID_TextUtil.h ------\pkg_Core\Interface\Utility\Ix_ClipboardUtil.h ------\pkg_Core\Interface\Utility\Ix_ConfigDBFactory.h ------\pkg_Core\Interface\Utility\Ix_FileTransaction.h ------\pkg_Core\Interface\Utility\Ix_FileUtility.h ------\pkg_Core\Interface\Utility\Ix_FileVersion.h ------\pkg_Core\Interface\Utility\Ix_GuidGenerator.h ------\pkg_Core\Interface\Utility\Ix_StringConvert.h ------\pkg_Core\Interface\Utility\Ix_TempFolder.h ------\pkg_Core\Interface\Utility\Ix_TextFileUtil.h ------\pkg_Core\Interface\Xml\ConfigIOSection.h ------\pkg_Core\Interface\Xml\IFileCryptHandler.h ------\pkg_Core\Interface\Xml\Ix_ConfigData.h ------\pkg_Core\Interface\Xml\Ix_ConfigSection.h ------\pkg_Core\Interface\Xml\Ix_ConfigSectionXml.h ------\pkg_Core\Interface\Xml\Ix_ConfigTransaction.h ------\pkg_Core\Interface\Xml\Ix_ConfigXml.h ------\pkg_Core\Interface\Xml\Ix_StringTable.h ------\pkg_Core\Interface\Xml\Ix_UIConfig.h ------\pkg_Core\Modules\ChangeManager\... ------\pkg_Core\Modules\LogManager\... ------\pkg_Core\Modules\PluginManager\... ------\pkg_Core\Modules\StringTable\... ------\pkg_Example\... ------\pkg_UnitTest\Interface\cppunit ------\pkg_UnitTest\Modules\TestCore ... .\Doc .\Doc\插件开发帮助.chm .\Doc\插件基础使用说明书.pdf
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章