如何映射键,除非按住 Control 或同时按下该键和 Control
How to map a key unless Control is hold down or that key is pressed with Control simultaneously
以下代码将 PgUp
(resp. PgDn
)映射到 WheelUp
(resp. WheelDn
),除非 Control
被按下。
例如,如果打开了 firefox 中的多个选项卡,如果我先按住 Control
然后按 PgDn
,我会根据需要转到下一个选项卡。但是,如果我同时按下 Control
和 PgDn
,我会转到下一个选项卡,我也会得到 WheelDown
的效果。在这种情况下如何防止 WheelDown
?
换句话说我想要一个映射
Pgdn-->WheelDown
如果既没有按住 Control
也没有同时按下 Pgdn
和 Control
。
#If (NOT (GetKeyState("Control", "P")))
PgUp::WheelUp
PgDn::WheelDown
#If
最后我找到了这个解决方案:
~PgDn::while (NOT (GetKeyState("Control", "P")))
Send {WheelDown}
~PgUp::while (NOT (GetKeyState("Control", "P")))
Send {WheelUp}
以下代码将 PgUp
(resp. PgDn
)映射到 WheelUp
(resp. WheelDn
),除非 Control
被按下。
例如,如果打开了 firefox 中的多个选项卡,如果我先按住 Control
然后按 PgDn
,我会根据需要转到下一个选项卡。但是,如果我同时按下 Control
和 PgDn
,我会转到下一个选项卡,我也会得到 WheelDown
的效果。在这种情况下如何防止 WheelDown
?
换句话说我想要一个映射
Pgdn-->WheelDown
如果既没有按住 Control
也没有同时按下 Pgdn
和 Control
。
#If (NOT (GetKeyState("Control", "P")))
PgUp::WheelUp
PgDn::WheelDown
#If
最后我找到了这个解决方案:
~PgDn::while (NOT (GetKeyState("Control", "P")))
Send {WheelDown}
~PgUp::while (NOT (GetKeyState("Control", "P")))
Send {WheelUp}