此处为VisualFreeBasic编程教程(从零开始学或VB进阶)的子章节部分,全部目录点链接。 在VB6里,很多高阶应用,就用到子类化,在VFB的世界里,子类化几乎不需要
因为所有的消息都自己操控,就和VB6子类化一样,VB6是为了和VB6抢要控制权 才去子类化,而VFB的控制权都在自己手里。 - Function FORM1_CUSTOM ( _[/p] hWndForm As HWnd, _ ' 窗体句柄
- wMsg As UInteger, _ ' 消息类型
- wParam As wParam, _ ' 第一个消息参数
- lParam As lParam _ ' 第二个消息参数
- ) As Long
-
- 每个窗口和控件都有自定义事件,这就是VB6里的子类化
-
- Function = 0 ' 根据你的需要改变
- End Function
复制代码还有,VFB给你提供了更强的控制权
所有的窗口和消息(指你自己写的软件),全部经过在这里,可以由你任意控制 有时候,我就是要用子类化,那么也简单,用VB6的方法即可
下面我要说的是,32位和64位通用子类化(VB6只能用在32位软件) - GetWindowLongPtr(HWND, GWLP_WNDPROC) 获取子类地址[/p]SetWindowLongPtr(HWND, GWLP_WNDPROC,新地址)
复制代码以上2个函数是随着64位系统出来而出的,现在写,你必须用这个。
|