Windows硬件系统函数 - mouse_event

来源:互联网 发布:股票交易大数据 编辑:程序博客网 时间:2024/04/30 10:05
VB声明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)说明模拟一次鼠标事件参数表参数类型及说明dwFlagsLong,下述标志的一个组合MOUSEEVENTF_ABSOLUTEdx和dy指定鼠标坐标系统中的一个绝对位置。在鼠标坐标系统中,屏幕在水平和垂直方向上均匀分割成65535×65535个单元MOUSEEVENTF_MOVE移动鼠标MOUSEEVENTF_LEFTDOWN模拟鼠标左键按下MOUSEEVENTF_LEFTUP模拟鼠标左键抬起MOUSEEVENTF_RIGHTDOWN模拟鼠标右键按下MOUSEEVENTF_RIGHTUP模拟鼠标右键按下MOUSEEVENTF_MIDDLEDOWN模拟鼠标中键按下MOUSEEVENTF_MIDDLEUP模拟鼠标中键按下dxLong,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定水平方向的绝对位置或相对运动dyLong,根据是否指定了MOUSEEVENTF_ABSOLUTE标志,指定垂直方向的绝对位置或相对运动cButtonsLong,未使用dwExtraInfoLong,通常未用的一个值。用GetMessageExtraInfo函数可取得这个值。可用的值取决于特定的驱动程序注解

进行相对运动的时候,由SystemParametersInfo函数规定的系统鼠标轨迹速度会应用于鼠标运行的速度

 

例子:

连续点击左键 1000次(私服游戏加点)

 

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)

 

Private Const MOUSEEVENTF_MOVE = &H1        '移动鼠标
Private Const MOUSEEVENTF_LEFTDOWN = &H2    '模拟鼠标左键按下
Private Const MOUSEEVENTF_LEFTUP = &H4      '模拟鼠标左键抬起
Private Const MOUSEEVENTF_RIGHTDOWN = &H8   '模拟鼠标右键按下
Private Const MOUSEEVENTF_RIGHTUP = &H10    '模拟鼠标右键抬起
Private Const MOUSEEVENTF_MIDDLEDOWN = &H20 '模拟鼠标中键按下
Private Const MOUSEEVENTF_MIDDLEUP = &H40   '模拟鼠标中键抬起
Private Const MOUSEEVENTF_ABSOLUTE = &H8000 '标示是否采用绝对坐标

 

Private Sub Command1_Click()

    Dim i As Integer

    For i = 1 to 1000
        mouse_event MOUSEEVENTF_RIGHTDOWN Or MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0
    Next i

End Sub

原创粉丝点击