Autohotkey 自动热键';s代表箭头键

Autohotkey 自动热键';s代表箭头键,autohotkey,Autohotkey,我想等一下 alt + spacebar + U for the up key alt + spacebar + H for the left arrow key alt + spacebar + J for the right arrow key alt +spacebar + N for the down arrow 这可以用自动热键吗?您好,欢迎使用自动热键 您可能希望了解AHK核心的基本介绍,热键: 配置只发送另一个密钥的热键相当简单。例如,向上键的alt+空格键可以转换为 !Sp

我想等一下

alt + spacebar + U for the up key
alt + spacebar + H for the left arrow key
alt + spacebar + J for the right arrow key
alt  +spacebar + N for the down arrow

这可以用自动热键吗?

您好,欢迎使用自动热键

您可能希望了解AHK核心的基本介绍,热键:

配置只发送另一个密钥的热键相当简单。例如,向上键的
alt+空格键可以转换为

!Space::
    send {up}
return
(注意,
alt
是一个修饰符,可以写成
) 或简称:

!Space::send {up}
向上键的空格键+U将是
Space&U::send{up}

但您正在寻找两个关键点加上一个修改器(alt)。对于由两个以上键(
alt+space+u
)触发的热键标签,您需要一种解决方法:

!Space::    ; once alt + space was pressed, ...
    while(getKeyState("alt") || getKeyState("space") || getKeyState("u")) { ; ... while either of these is being pressed down, ...
        hotKey, *u, altSpaceU, ON   ; u should now send {up}
    }
    hotKey, *u, altSpaceU, OFF
return

altSpaceU:  ; note: this is a label, no hotkey
    send {up}
return
求你了,不要被这吓倒。自动热键实际上是非常强大和易于学习。不幸的是,这是解决两个以上关键热键的唯一有效方法

编辑 天哪为什么没人告诉我

#if getkeystate("alt")
!space::send {up}
#if
显然是一种更好的解决办法

这就是解决办法 !空格:: 发送{up}
返回

非常感谢!!这太棒了,孩子们!你的作品很棒。它主要是用来写代码的,所以我不必把右手一直移到箭头键上,我知道,但是如果空格键下有箭头键,那就太完美了。“the!u等”?所以你想出了
!u::发送{up}
?那很容易。是的,ahk只是为懒惰的ppl:p你可能想回答你自己的问题,这样你就可以接受一些答案。否则,其他人会认为这是无法解决的。另请参阅,我只想指出,
Space&U::send{up}
阻止空格键working@Diego您需要在keyname之前添加一个
~
。@Blauhirn谢谢。。这解决了一个问题,但又造成了另一个问题。假设我按空格+J向左移动,它会在向左移动之前创建一个空格。如何防止在触发热键之前创建空间?睡眠选择?