永发信息网

VB 怎样实现鼠标连点

答案:3  悬赏:70  手机版
解决时间 2021-02-14 09:38
  • 提问者网友:留有余香
  • 2021-02-13 13:48
VB 怎样实现鼠标连点以电脑程序模拟人循环的点击鼠标。
用哪个语句可以实现呢?
最佳答案
  • 五星知识达人网友:撞了怀
  • 2021-02-13 14:45
可以使用API函数mouse_event实现鼠标动作,包括单击,移动等。
如:
Option Explicit
Private Declare Sub mouse_event Lib "user32 " (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000

Private lngClickCount as long
'定时在100,120处单击鼠标左右,次数5次
Private Sub Timer1_Timer()
If lngClickCount = 5 then
Timer1.Enabled = False
Exit Sub
End If
lngClickCount = lngClickCount + 1
mouse_event MOUSEEVENTF_MOVE Or MOUSEEVENTF_ABSOLUTE, 100& * 65535 / 1024, 120 * 65535 /768, 0&, 0& '假设屏幕分辨率是1024*768,移动到(100,120)坐标点
mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP Or MOUSEEVENTF_ABSOLUTE, 0, 0, 0&, 0& '如果把这句再重复一下就是双击了
End Sub

具体参考下面的链接。
全部回答
  • 1楼网友:罪歌
  • 2021-02-13 16:19
1.用mouse_event函数模拟 Public Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long) 2.用SendMessage或PostMessage发送WM_LBUTTONDOWN和WM_LBUTTONUP消息。 Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Public Const WM_LBUTTONDOWN = &H201 Public Const WM_LBUTTONUP = &H202
  • 2楼网友:人類模型
  • 2021-02-13 15:11
vb的鼠标事件有单击click、双击dblclick、按下mousedown、松开mouseup和移动mousemove。请删除其它鼠标事件过程,只对鼠标双击事件dblclick编程。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯