如何在同一脚本中由另一个热键命令激活的Sleep命令不中断运行循环?我知道一个简单的解决方法是拥有2个ahk文件,但我想整合到一个脚本中。
我的示例代码例如。 wav文件位于相同的文件夹位置,以便为我工作。否则,脚本将忽略SoundPlay命令。现在代码,循环工作正常,但每次运行RandomLabel热键(按键盘上的s键)都会被禁用,但在Sleep命令到期后再次启用。
Esc::Reload
+1::Test()
Test()
{
SoundPlay,Activated.wav
Hotkey,~s,RandomLabel,Toggle
loop
{
PixelGetColor,color,707,721,Slow
if(color=0xFFFFFF)
{
SoundPlay,Pong.wav
loop
{
PixelGetColor,color,707,721,Slow
if(color=!0xFFFFFF)
{
SoundPlay,Ping.wav
break
}
}
}
}
}
RandomLabel:
Sleep,2000
SoundBeep,750,300
return
编辑:代码的目标是在播放声音文件之前使用热键激活倒数计时器时运行不间断的循环。如果可能的话,这一切都在autohotkeys 1中完成。
答案 0 :(得分:1)
尝试SetTImer
。
RandomLabel:
settimer, LabelSoundBeep, -2000
return
LabelSoundBeep:
SoundBeep,750,300
return