我想举行
alt + spacebar + U for the up key
alt + spacebar + H for the left arrow key
alt + spacebar + J for the right arrow key
alt +spacebar + N for the down arrow
这可以用AutoHotkey吗?
答案 0 :(得分:4)
您好,欢迎来到AutoHotkey,
你可能想看看AHK的核心基本介绍,热键:
https://www.autohotkey.com/docs/Hotkeys.htm
配置除了发送另一个密钥之外什么都不做的热键非常简单。例如,alt + spacebar for the up key
可以翻译成
!Space::
send {up}
return
(请注意alt
是一个修饰符,可以写成!
)
或简短形式:
!Space::send {up}
spacebar + U for the up key
将是Space & U::send {up}
。
但是你正在寻找2键PLUS修饰符(alt)。对于由超过两个键(alt + space + u
)触发的热键标签,您需要一个解决方法:
!Space:: ; once alt + space was pressed, ...
while(getKeyState("alt") || getKeyState("space") || getKeyState("u")) { ; ... while either of these is being pressed down, ...
hotKey, *u, altSpaceU, ON ; u should now send {up}
}
hotKey, *u, altSpaceU, OFF
return
altSpaceU: ; note: this is a label, no hotkey
send {up}
return
请不要被这个打扰。 AutoHotkey实际上非常强大且易于学习。可悲的是,(afaik)这是解决超过两键热键的唯一工作方式。
EDIT 耶稣为什么没有人告诉我..
#if getkeystate("alt")
!space::send {up}
#if
显然是一种更好的解决方案
答案 1 :(得分:0)
这是解决方案 !空间:: 发送{up} 返回