Foxtable(狐表)用户栏目专家坐堂 → 模拟鼠标点击,中间如何停止模拟执行


  共有4371人关注过本帖树形打印复制链接

主题:模拟鼠标点击,中间如何停止模拟执行

帅哥哟,离线,有人找我吗?
weibu
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:641 积分:5194 威望:0 精华:0 注册:2018/5/19 22:27:00
模拟鼠标点击,中间如何停止模拟执行  发帖心情 Post By:2022/11/4 17:15:00 [只看该作者]

老师我做的执行模拟鼠标,可用按钮  pause = True 在for 。。。  next   执行中,随时停止执行。但在Sleep(2500)的这段时间,单击按钮很多时候没反应,应该如何解决?
If pause = True Then  用按钮控制代码暂停执行
        Return
End If


 For i As Integer = s - 1 To.Lines.Length - 1
 System.Threading.Thread.Sleep(2500)  ’我这个代码只是想等待2.5秒后执行下面代码,还有无其他代码同样效果,但不影响操作软件上的按钮
        SetCursorPos (r1("x"), r1("y")) '鼠标位置
        mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) '点击
        mouse_event (MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
        mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) '点击
        mouse_event (MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
        System.Threading.Thread.Sleep(100)
        SendKeys.Send("{DEL}")
Next
[此贴子已经被作者于2022/11/4 21:11:30编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/11/5 8:59:00 [只看该作者]

比如

For i As Integer = s - 1 To.Lines.Length - 1
Dim d As Date = Date.now
Do While pause = False AndAlso d.AddMilliseconds(2500) > Date.now
    Application.DoEvents
Loop
 SetCursorPos (r1("x"), r1("y")) '鼠标位置
……

 回到顶部