检测鼠标活动 『已解决』
本帖最后由 akk08 于 2013-8-24 21:30 编辑请教各位大大,电脑鼠标5分钟无操作,就会自动关机,如何防止?
用_Timer_GetIdleTime函数?如何只检测鼠标活动?求解 无操作是指鼠标没有移动还是没有点击还是既没有移动也没有点击? 无移动也无点击 回复 2# MaGiCmAn
就是无移动也无点击,办公电脑貌似只判断鼠标操作 回复 2# MaGiCmAn
就是无移动也无点击,办公电脑貌似只判断鼠标操作 这个是不是电脑的电源管理里设置下就可以了
没必要还用程序把 回复 6# ghostsho
要能改我早改了,没管理员权限 用MouseGetPos检测鼠标有没有移动,用 _IsPressed检测鼠标有没有点击。
建议还是定时用MouseMove模拟移动鼠标吧(微量移动一点就行),也不影响实际操作,还省得那么麻烦。 回复 8# MaGiCmAn
微量移动?新手,目前只会移动到特定坐标,如何实现,谢谢! 类似$apos=MouseGetPos检测鼠标当前位置,MouseMove($apos+1,$apos+1)移动一个像素。写个无线循环(white 1),每4分钟一次就可以了吧?
实在要检测的话就用这个吧,献丑了:#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)
EndIf
WEnd
我也是新手 把
MsgBox(1,"捕捉到",MouseGetPos(2))
这行删掉 回复 10# MaGiCmAn
万分感谢,我试一试。 不知道结果行不性啊 回复 10# MaGiCmAn
11行那个是 $delay+=200?
不是 $delay=+200 回复 11# MaGiCmAn
啊哦,就是+=,可是程序运行貌似不管用
页:
[1]
2