Эмуляция щелчков мыши - 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

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.333 из 5
Похожие ответы