我想在禁用时使用我的数字键盘进行某些操作(AutoHotKey V2)
这对于根据状态具有不同名称的内部键很容易NumLock:
NumpadRight:: MsgBox("pressed right arrow when numpad is off")
我设法为外部键(例如*(没有取决于数字键盘状态的特定名称)做的事情是非常野蛮的,因为我必须对每个命令重复状态检查:
NumpadMult:: {
if (!GetKeyState("NumLock", "T"))
MsgBox("specific action for NumLock off")
else
Send "*"
}
NumLock当有几个动作时,有没有更简单的方法来检查状态?
我尝试了以下方法,但在NumLock初始脚本启动后似乎没有重新评估的状态(我总是得到一个具有正确状态的弹出窗口0
或1
):
if (GetKeyState("NumLock", "T")) {
NumpadMult:: MsgBox(GetKeyState("NumLock", "T"))
}
一种不那么野蛮的方法是使用
#If
(v1) 或#HotIf
(v2) 命令与所有键一起使用,而无需一次又一次地检查: