首页 > 解决方案 > AHK 初学者:当我尝试随机睡眠时间时,它总是睡最大时间

问题描述

首先,说到 AHK,我是个大菜鸟。

当我想用这个变量随机休眠几秒时:random rand, 0, 3000 它总是休眠 3000 秒。我不知道为什么。我在多个论坛上进行了搜索,但大多数情况下,slolution 中提供的代码太复杂,我无法理解。旁注:你们知道任何针对初学者的优秀 youtube 教程系列吗?

我遵循了此评论中的确切步骤:

https://www.reddit.com/r/AutoHotkey/comments/3o5trp/how_to_do_a_random_sleep_in_ahkautohotkey/cvuenc1/

这是我的代码:

pause on

random rand, 0, 3000    
mousemove, 100,100,20,r    
sleep %rand%    
mousemove, 100,100,20,r    
sleep %rand%    
mousemove, 100,100,20,r    
sleep %rand%    
mousemove, 100,100,20,r    
sleep %rand%    


return    

z:: pause    
x:: exitapp    
c:: return

mousemove只是测试随机睡眠的占位符。我希望鼠标每 0 到 3 秒随机移动一次。现在它只精确地每 3 秒执行一次。

最后:由于我是堆栈溢出的新手,所以如果您能给我一些建议来格式化我的帖子,请随时这样做。

谢谢!

标签: autohotkey

解决方案


经过更多的谷歌搜索和朋友的帮助,我现在有了以下代码:它现在似乎可以工作了,它也循环了 50 次。欢迎提出改进代码的建议。

pause on


rnd(min,max){
    Random, myVar,% min,% max
return myVar
}    


loop
{
    if x >=50
        break
    else       
        mousemove, 100, 100, 10, r
        Sleep, % rnd(1,2000)
        x++        
}       


Return    

z:: pause
x:: exitapp
c:: return

推荐阅读