我在脚本中发生了最奇怪的行为。在下面的MWE中,只要有F1
行,Hotkey F2
声明就不起作用。如果我注释掉第2行,那么F2
热键工作得很好。
#SingleInstance, Force
F1::MsgBox You pressed F1
Hotkey F2, Alone
return
Alone:
MsgBox You pressed F2.
return
双冒号表示法和"热键"命令之间是否有交互作用导致了这种情况?有办法绕过这个吗?
当然,这是一个更大的脚本的一部分,其中定义了几个不同的热键。代码中的大多数热键都使用双冒号表示法,但我认为我必须对动态键(比如通过ini文件定义的键(使用热键命令。这段代码是带有静态热键(使用双冒号表示法(的较大代码集的一部分,我无法更改这部分代码。
我在Windows Enterprise 1909(OS Build 18363.720(上运行Auto热键v1.12.02
注意:我注意到,如果我把双冒号声明放在Hotkey
命令之后(即重新排序的第2行和第3行(,它似乎可以工作。我不知道这是否是一种选择。原始脚本中有数百行代码。我仍然想知道是什么导致了这种行为。
您正在创建一个单行热键F1
代码执行不会继续到下面的行。
以下是您要查找的语法:
#SingleInstance, Force
F1::
MsgBox, You pressed F1
Hotkey, F2, Alone
return
Alone:
MsgBox, You pressed F2.
return