AutoHotKey:我的热键不能与其他修饰键组合使用

时间:2014-02-19 14:39:23

标签: keyboard-shortcuts autohotkey

我正在尝试使用AutoHotKey来模拟笔记本键盘上的KBC Poker keyboard,我想使用 RWin 键作为功能键,例如, RWin + a left RWin + w up ,我在AHK中配置了这个脚本:

RWin & w::Send {Up}
RWin & a::Send {Left}
RWin & s::Send {Down}
RWin & d::Send {Right}

它的工作原理是我可以使用 RWin + w / a / s / d 移动光标,但不起作用的是按 Shift + RWin + d 选择文本。

另一个例子是F4键,我的映射:

RWin & 4::Send {F4}

所以我希望 Alt + RWin + 4 关闭当前窗口( Alt + F4 行为),但事实并非如此。

我想以某种方式启用修饰键以使用我的热键,而不用指定每个可能的组合。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我知道这不一定能回答你的问题,但我认为这可能对你有所帮助。它基本上是上面MCL链接的一个精心设计的例子。

我使用的函数使我能够使用 CapsLock 作为光标移动修改器。它适用于移动光标的基础知识,但也允许执行修改器, Alt 用于文本突出显示。希望这有帮助!

; Simple Movement
CapsLock & h::CapsNav("Left")
CapsLock & j::CapsNav("Down")
CapsLock & k::CapsNav("Up")
CapsLock & l::CapsNav("Right")

; Start of line or End of line
CapsLock & n::CapsNav("Home")
CapsLock & p::CapsNav("End")

; Word jump
CapsLock & .::CapsNav("Right", "!")
CapsLock & m::CapsNav("Left", "!")

CapsNav(action, initmod = "", mod = "+")
{
    If ! GetKeyState("alt")
        Send % initmod "{" action "}"
    Else
        Send % mod . initmod "{" action "}"
    SetCapsLockState, AlwaysOff
}