|
Для имитации нажатия на клавишу мыши служит API-функция
mouse_event
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)
dwFlags - означает, какое событие в данный
момент должно происходит
dx,dy - величины, характеризующие перемещение
курсора от текущего положения курсора
dx - перемещение по горизонтали (если
значение положительное - перемещение идет
вправо, если отрицательно - влево)
dy - перемещение по вертикали (если
значение положительное - перемещение идет вниз,
если отрицательно - вверх).
Пример использования функции: неоходимо
переместить курсор из текущей точки нахождения
курсора в точку с координатами (851,143) и в этой
точке имитировать нажатие левой клавиши мыши
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As
Long
Private Type POINTAPI
x As Long
y As Long
End Type
Dim z As POINTAPI
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_ABSOLUTE = &H8000
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Private Sub Form_Load()
GetCursorPos z 'получить текущее значение
местоположения курсора
zx = (851 - z.x) / 2 'необходимо разделить полученное
значение на 2. С чем это связано, я не знаю. А
вы?
zy = (143 - z.y) / 2
mouse_event MOUSEEVENTF_MOVE, zx, zy, 0&, 0& 'перемещение
курсора
mouse_event MOUSEEVENTF_LEFTDOWN, 0&, 0&, 0&, 0& 'нажатие на
левую клавишу мыши
mouse_event MOUSEEVENTF_LEFTUP, 0&, 0&, 0&, 0& 'отпускание
левой клавиши мыши
End Sub 'Примеры использования
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_ABSOLUTE = &H8000
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
'Имитация клика:
mouse_event MOUSEEVENTF_LEFTDOWN, lpPoint.x, lpPoint.y, 0&, 0&
mouse_event MOUSEEVENTF_LEFTUP, lpPoint.x, lpPoint.y, 0&, 0&
|
|