#InputLevel

控制热键和热字串是否忽略模拟的键盘和鼠标事件.

#InputLevel Level

参数

Level

类型: 整数

如果省略, 则默认为 0. 否则, 指定一个介于 0 和 100 之间的整数.

备注

如果在脚本中未指定此指令, 则它的行为就像设置为 0 一样.

有关如何使用 SendLevel 和 #InputLevel 的说明, 请参阅 SendLevel.

此指令是与位置有关的: 它会作用于在它到下一个 #InputLevel 指令之间的所有热键和热字串. 如果未指定 #InputLevel 指令, 则热键和热字串的默认级别为 0.

热键的输入级别还可以用 Hotkey 函数来设置. 例如: Hotkey "#z", my_hotkey_sub, "I1"

热键或非自动替换型热字串的输入级别同时也作为由此热键或热字串生成的任何键击或按钮点击的默认发送级别. 因为键盘或鼠标重映射实际上是一对热键, 这样就可通过 #InputLevel 来让重映射触发其他热键.

早于 v1.1.06 的 AutoHotkey 版本会表现得就像 #InputLevel 0SendLevel 0 那样.

和其他指令一样, #InputLevel 不能有条件地执行.

SendLevel, 热键, 热字串

示例

使第一个热键 *Numpad0:: 触发第二个热键 ~LButton::. 如果省略或注释掉 #InputLevel 指令, 则不会出现这种情况.

#InputLevel 1
; 使用 SendEvent 可以触发脚本自己的热键.
*Numpad0::SendEvent "{Blind}{Click Down}"
*Numpad0 up::SendEvent "{Blind}{Click Up}"
#InputLevel 0
; Numpad0 或 LButton 都可以触发此热键:
~LButton::MsgBox "Clicked"