vb 模拟鼠标点击

来源:互联网 发布:长征五号发射失败 知乎 编辑:程序博客网 时间:2024/05/16 05:31
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 '指定鼠标使用绝对坐标系,此时,屏幕在水平和垂直方向上均匀分割成65535×65535个单元Private Const MOUSEEVENTF_MOVE = &H1 '移动鼠标Private Const MOUSEEVENTF_LEFTDOWN = &H2 '模拟鼠标左键按下Private Const MOUSEEVENTF_LEFTUP = &H4 '模拟鼠标左键抬起'作用:屏幕点击'参数:x,x轴点击位置,像素'参数:y,y轴点击位置,像素Public Sub ms_Screen_Click(ByVal x As Long, ByVal y As Long)    mw = x / (Screen.Width / 15) * 65535    mh = y / (Screen.Height / 15) * 65535    mouse_event MOUSEEVENTF_ABSOLUTE + MOUSEEVENTF_MOVE, mw, mh, 0, 0    mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0End Sub'作用:vb窗体点击'参数:x,x轴点击位置,像素'参数:y,y轴点击位置,像素'参数:f,单击窗体名字Public Sub ms_form_Click(ByVal x As Long, ByVal y As Long, f As Form)    f.SetFocus '//获得焦点    ms_Screen_Click Me.Left / 15 + x, Me.Top / 15 + yEnd SubPrivate Sub Command1_Click()ms_form_Click 478, 359, Me'ms_Screen_Click Me.Left / 15 + 478, Me.Top / 15 + 359End Sub

0 0