利用VB实现对指定按钮的点击功能-再次求助高手

来源:百度知道 编辑:UC知道 时间:2024/06/07 17:32:03
本人打算用VB作出一个程序,当点击程序里的Command1时,程序会根据获得的按钮的句柄,对按钮实现点击功能。(备注:欲点击的按钮是桌面其他应用程序的句柄)

具体代码如下:
Private Sub Command1_Click()
Dim bWnd As Long 'bWnd为桌面其他应用程序的按钮
Const WM_LBUTTONDOWN = &H201
Const WM_LBUTTONUP = &H202
SendMessage bWnd, WM_LBUTTONDOWN, 0, 0
SendMessage bWnd, WM_LBUTTONUP, 0, 0
End Sub

但是,在实际运行过程当中,该程序对获得得的其他应用程序的按钮只会处于一个选中的状态,不会实现点击的效果。

高手,帮忙分析下原因,谢谢,分不多,望笑纳~~

'因为按键的间隔时间太短了,从而造成程序无法进行正确的反应。
'你可以在“通用”内增加
'--------------------------------------
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
'--------------------------------------
'然后做以下修改就可以了。
'--------------------------------------
Private Sub Command1_Click()
Dim bWnd As Long 'bWnd为桌面其他应用程序的按钮
Const WM_LBUTTONDOWN = &H201
Const WM_LBUTTONUP = &H202
SendMessage bWnd, WM_LBUTTONDOWN, 0, 0
sleep 200 '你可根据机器的具体情况进行修改
SendMessage bWnd, WM_LBUTTONUP, 0, 0
End Sub
'--------------------------------------

其实用下面的代码就可以模拟按钮2的点击,不需要那么复杂的。
Private Sub Command1_Click()
Command2.Value = 1
End Sub