例如,如果我按此顺序按下Ctrl++ Shift+ Alt,C我如何获取相应的热键定义?
我期望得到如下结果:
; pseudo code
*::MsgBox %A_ThisHotkey% was pressed
答案1
我假设您问的是怎样编写热键定义...请参阅Hotkey Modifier Symbols
下面Hotkeys
的帮助。可能有一个包罗万象的全局热键触发器,但如果有的话,我不知道它是什么。
不过,一旦您了解了基本的修饰符语法,您就不需要这个了。此外,就修饰符而言,没有“顺序”——当热键触发时,它们要么被按下,要么不被按下,而且一旦您在c列出的示例中按下它们,您按什么顺序按下它们实际上并不重要。
; ^ = Control
; + = Shift
; ! = Alt
所以热键定义是......
^+!c::
此外,事实证明有一种方法可以按照您所要求的方式进行操作,尽管我以前从未尝试过或使用过它。请参阅GUI Control Types
帮助,然后Hotkey
从目录中查看GUI Control Types
...这可以创建一个特殊的 GUI 控件,能够捕获输入并将其转换为热键定义...
Gui, Add, Hotkey, vChosenHotkey
Gui, Show
Loop {
Gui, Submit, NoHide
ToolTip % ChosenHotkey
Sleep 10
}