MaGiCmAn 发表于 2013-8-24 17:06:31

你先写个无限循环的mousemove看看管不管用吧,把移动范围调大一点。

akk08 发表于 2013-8-24 17:31:51

回复 16# MaGiCmAn


    那个管用,不过总觉得,不够高端大气上档次啊,哈哈

MaGiCmAn 发表于 2013-8-24 20:10:12

本帖最后由 MaGiCmAn 于 2013-8-24 20:11 编辑

我前面那个代码马虎了,移动鼠标后忘记重置时间。#include <Misc.au3>
$daley=0      ;计时
While 1
      $aPos = MouseGetPos()
      Sleep(200)
      $bPos = MouseGetPos()
If $aPos<>$bPos Or $aPos<>$bPos Or _IsPressed(01)=1 Or _IsPressed(02)=1 Or _IsPressed(03)=1 Then      ;如果鼠标有动作就重置计时
      $daley=0
      MsgBox(1,"捕捉到",MouseGetPos(2))
EndIf
$daley+=200
If $daley=240000 Then                        ;计时达到4分钟就移动鼠标
MouseMove($apos+1,$apos+1)
$daley=0      ;重置计时
EndIf
WEnd另外你可以把MouseMove($apos+1,$apos+1)这行改成MouseMove($apos+10,$apos+10)或者其他什么数试试,增大鼠标移动的幅度。

akk08 发表于 2013-8-24 20:22:00

回复 18# MaGiCmAn


    你这和上面那个一样啊,当$delay=24000时,鼠标移动,第一个条件语句,不就让其归0了吗?

akk08 发表于 2013-8-24 21:18:54

回复 18# MaGiCmAn


    犯2了,想问一下,_Ispressed(03)代表哪个键,鼠标滚轮吗,帮助上没有,到时有个04

MaGiCmAn 发表于 2013-8-24 23:26:52

仔细看看,$delay=24000时的鼠标移动触发不到第一个if吧?
_Ispressed(03)是我又一个马虎,改为04吧。
我是新手,请多多见谅

MaGiCmAn 发表于 2013-8-24 23:27:26

仔细看看,$delay=24000时的鼠标移动触发不到第一个if吧?
_Ispressed(03)是我又一个马虎,改为04吧。
我是新手,请多多见谅

akk08 发表于 2013-8-24 23:31:30

回复 21# MaGiCmAn


    所以说犯2了
页: 1 [2]
查看完整版本: 检测鼠标活动 『已解决』