Эмуляция щелчков мыши - VB
Формулировка задачи:
Здравствуйте! Совсем блин забыл VB, много лет не программировал ( хотя это и было на уровне начинающего ). Но сегодня снова возникла необходимость написать вспомогательную программу.
Дело в том, что из-за некой специфики работы Windows 7 на планшете одна программа, написанная на Framework, никак не хочет определять, что я кликаю по кнопкам, подключаешь мышь - работает. А там у W 7 есть два режима - мышь и ручной ввод. Они немного разные.
Так вот, хотел написать прогу, чтобы она определяла, что есть клик по экрану (другие же блин определяют!!!) и эмулировала нажатие именно мышью, то есть фактически дублировала клик.
Нашёл как эмулировать клики в любой части экрана и т.д., но не могу написать часть, чтобы правильно отслеживала клик левой кнопкой мыши
Помогите, пожалуйста
Решение задачи: «Эмуляция щелчков мыши»
textual
Листинг программы
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_ABSOLUTE = &H8000 ' absolute move Private Const MOUSEEVENTF_LEFTUP = &H4 ' left button up Private Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button down Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long Private Type POINTAPI X As Long Y As Long End Type Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As KeyCodeConstants) As Integer Private Sub Timer1_Timer() Dim pt As POINTAPI GetCursorPos pt screenx& = GetSystemMetrics(SM_CXSCREEN) screeny& = GetSystemMetrics(SM_CYSCREEN) destx& = pt.X * &HFFFF& / screenx& desty& = pt.Y * &HFFFF& / screeny& mouse_event MOUSEEVENTF_ABSOLUTE Or MOUSEEVENTF_LEFTDOWN, destx&, desty&, 0, 0 mouse_event MOUSEEVENTF_ABSOLUTE Or MOUSEEVENTF_LEFTUP, destx&, desty&, 0, 0 End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д