事件例程非正常触发的处理方式
我写了一个程序,有一个事件是按钮的mousedown和mouseup控制的一个函数的执行和退出,我现在需要用程序的其他方式来模拟这两个过程应该怎么办?
我用
- VB code
Const WM_LBUTTONDOWN = &H201 Const WM_LBUTTONUP = &H202 Dim Tmp Tmp = SendMessage(cmdTalk.hwnd, WM_LBUTTONDOWN, 1, ByVal 0&) '发送系统消息,模拟按键被按下(系统API函数)' End If ' Sleep (1000) ' Call cmdTalk_MouseUp(a, b, c, d) Tmp = SendMessage(cmdTalk.hwnd, WM_LBUTTONUP, 1, ByVal 0&)
这种发送系统消息的机制,会导致发送和接受有延时,而且mousedown里边有个函数执行并没有因为按钮弹起而退出,而且中间的sleep并不会导致按钮的按下和弹起时间间隔。怎么解决呢?
我是不是需要控制指针到按钮上并且控制鼠标指针按下和释放的方式才可以实现??
[解决办法]
直接调用
如:call form1.cmdOk_Click()