问题描述
我在使用 AutoHotKey 脚本时遇到问题。当我按 F1 时,鼠标左键被按住,但 A 也被按下。有谁知道我该如何解决这个问题?
#MaxThreadsPerHotkey,2
Toggle := 0
Toggle2 := 0
F1::
Toggle := !Toggle
If (Toggle){
Click,Down
} else {
Click,Up
}
F2::
Toggle2 := !Toggle2
If (Toggle2){
send {a down}
} else {
send {a up}
}
解决方法
您需要通过在要执行的最后一部分之后放置 Return
来告诉 autohotkey 您已经完成了在按下热键时应该执行的代码的编写。
来自docs:
从之前跳转到的子程序返回 函数调用、Gosub、热键激活、GroupActivate 或其他 意味着。
所以对于您的脚本:
#MaxThreadsPerHotkey,2
Toggle := 0
Toggle2 := 0
F1::
Toggle := !Toggle
If (Toggle){
Click,Down
} else {
Click,Up
}
return
F2::
Toggle2 := !Toggle2
If (Toggle2){
send {a down}
} else {
send {a up}
}
return