按键精灵中关于TouchDownEvent和TouchDown的区别探究

2017年01月28日 16929点热度 25人点赞 5条评论

问题发现

在按键精灵中,录制的脚本中使用了带Event的函数(TouchDownEvent,TouchMoveEvent,TouchUpEvent),而提供的指南中,却只有不带Event的(TouchDown,TouchMove,TouchUp)。而当把这两种函数进行比较,却能发现明显不同:运行效率Event明显快很多

Dim t1

t1=TickCount()
TouchDown 1,1,0
TouchMove 5,1,0
TouchUp 0
ShowMessage "无Event:"&TickCount()-t1
Delay 2000

t1=TickCount()
TouchDownEvent 1,1,0
TouchMoveEvent 5,1,0
TouchUpEvent 0
ShowMessage "有Event:"&TickCount()-t1
Delay 2000

运行输出:无Event:183,有Event:3

单位是毫秒,这个差距很大了,而且会造成卡顿。

出现原因

Event的中文意思是事件,这里猜测不用Event的是模拟人手点击(防止被检测)所以有自然延时。而Event直接是录制下来的,所以不需要防检测,直接输出指令,所以效率高。

实例运用


在刷一刷红包中,用Event拿下8000+

章鱼DS

学生安卓网站代码通吃的草根,拼命着长出树根。

文章评论

  • 水电费

    TouchMove 后面一个时间参数你没填,缺省默认是100毫秒

    2017年09月13日
    • 章鱼DS

      @水电费 谢谢提醒,可惜手头的miui9不能用按键,还没法继续试验。

      2017年09月24日
      • @章鱼DS TouchMoveEvent 怎么用在写的代码中 替换TAP之类的不能用

        2019年08月29日
  • 侠客行

    能不能给个联系方式。我想请教您这个命令的用法。

    2018年12月18日