MessageBlaster32 Ole Control 使用说明 |
MessageBlaster32 Ole Control,是一个专用于截取windows消息,并交由自定义过程处理的一个控件。为简便起见,以下称这个控件为MsgBlst32。
属性
1、hWndTarget:MsgBlst32控件要截取消息的对象的句柄。如果你要为Form1截取消息,那么MsgBlst32.hWndTarget=Form1.hWnd,每个MsgBlst32控件只能绑定到一个对象上。你可以在程序中使用多个MsgBlst32控件
2、MsgList:这是一个数组,范围从0到31,它的值为你要控制的消息编号。如果你想处理WM_SYSCOMMAND消息、WM_CONTEXTMENU消息,那么可以这样定义:
MsgBlst32.MsgList(0) = WM_SYSCOMMAND
MsgBlst32.MsgList(1) = WM_CONTEXTMENU
请注意:一个MsgBlst32控件最多处理32条消息
3、MsgPassage:这也是一个数组,它和MsgList总是成对使用的。它的取值有三种
-1:先执行默认的处理,再执行用户自定义的消息处理过程
0:仅执行用户自定义的消息处理过程(默认)
1:先执行用户自定义的消息处理过程,再执行默认的处理
针对上面的例子,如果我们这样定义:
MsgBlst32.MsgPassage(0) = 1
MsgBlst32.MsgPassage(1) = 0
那么表示,接收到WM_SYSCOMMAND消息时,先执行默认的处理,再执行用户自定义的消息处理过程;接收到WM_CONTEXTMENU消息时,仅执行用户自定义的消息处理过程
事件
MsgBlst32控件只有一个事件,定义如下:
Message(ByVal MsgVal As Long, ByVal wParam As Long, ByVal lParam As Long, lplRetVal As Long)
MsgVal参数为消息编号,如果你有多个消息要处理,可以用Select Case语句控制
关于这个控件,就介绍这么多吧,如果你喜欢,请到例程中下载