AutohotKey开始/停止相同的按键

时间:2015-08-10 16:44:18

标签: autohotkey

这个脚本假设在按下某个键时开始/停止。我希望那是同一把钥匙。示例I按F3开始,再次按F3停止。它将慢慢从0000计数到9999,并将记住您停止循环时的位置。由于某种原因,它将开始,但当我再次按F3时,它不会停止。遵循此示例http://www.autohotkey.com/docs/FAQ.htm#repeat 我究竟做错了什么?

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

start = 0000
Run = false

F3::                       
SetFormat, Float, 04.0
current = %start%

if Run {
    Run := false
    return 
}

Run := true
Loop, 9999{
    Send e                      
    Sleep, 760 

    TrayTip, PinCode BruteForce, %current%, , 16
    Send %current%                  
    current += 1.0
    start += 1.0
    Sleep, 700

    if(current = 10000){
        Break
    }

    if (not Run){
        Break
    }
}

Run := false
return

1 个答案:

答案 0 :(得分:1)

您错过了可以在您发布的链接中找到的#MaxThreadsPerHotkey。它的默认值是1,所以一旦按下 F3 ,就不能再次触发它。增加它,因此热键可以按照你想要的方式中断。

以下是阻止执行某项操作的其他三种方法:

  • 使用timer代替循环并切换其状态
  • 使用pause命令
  • 使用goto命令