分享

vb 模拟鼠标点击

 hdzgx 2019-12-19
  1. 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)
  2. Private Const MOUSEEVENTF_ABSOLUTE = &H8000 '指定鼠标使用绝对坐标系,此时,屏幕在水平和垂直方向上均匀分割成65535×65535个单元
  3. Private Const MOUSEEVENTF_MOVE = &H1 '移动鼠标
  4. Private Const MOUSEEVENTF_LEFTDOWN = &H2 '模拟鼠标左键按下
  5. Private Const MOUSEEVENTF_LEFTUP = &H4 '模拟鼠标左键抬起
  6. '作用:屏幕点击
  7. '参数:x,x轴点击位置,像素
  8. '参数:y,y轴点击位置,像素
  9. Public Sub ms_Screen_Click(ByVal x As Long, ByVal y As Long)
  10. mw = x / (Screen.Width / 15) * 65535
  11. mh = y / (Screen.Height / 15) * 65535
  12. mouse_event MOUSEEVENTF_ABSOLUTE + MOUSEEVENTF_MOVE, mw, mh, 0, 0
  13. mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  14. End Sub
  15. '作用:vb窗体点击
  16. '参数:x,x轴点击位置,像素
  17. '参数:y,y轴点击位置,像素
  18. '参数:f,单击窗体名字
  19. Public Sub ms_form_Click(ByVal x As Long, ByVal y As Long, f As Form)
  20. f.SetFocus '//获得焦点
  21. ms_Screen_Click Me.Left / 15 + x, Me.Top / 15 + y
  22. End Sub
  23. Private Sub Command1_Click()
  24. ms_form_Click 478, 359, Me
  25. 'ms_Screen_Click Me.Left / 15 + 478, Me.Top / 15 + 359
  26. End Sub

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多