Autohotkey 具有热键和热字符串

Autohotkey 具有热键和热字符串

如何允许重新映射的热键触发热字符串,以便它们在 Autohotkey 中工作?

r::Send e
::ee::by the way

因此,当我按下键盘上的 rr 键时,它会打印“顺便说一下”。

目前,只有按下 ee 时才会打印。

注意:我想要一个不涉及分配多个触发缩写来扩展为同一个字符串的解决方案。

答案1

如果您使用 AHK v1.1+,则可以使用 #InputLevelhttp://ahkscript.org/docs/commands/_InputLevel.htm

::ee::by the way
#InputLevel, 1
r::Send e

答案2

改用这个:

r::发送 {ASC 0101}
::ee::顺便说一下
::rr::顺便说一句

答案3

以下是代码:

r::
Loop
{
    b:=GetKeyState("r")
    if (b !=1)
    {
        ccounter := 1
        Loop
        {
            c:=GetKeyState("r")
            if (c=1)
            {
                MsgBox, by the way
                return
            }
            Sleep, 50

            ccounter:= ccounter + 1

            if (ccounter = 60)
            {
                return
            }
        }
    }
}
return

r按下 2 次时,会弹出“顺便说一下”消息框。但两次r按下之间的时间最多应为 3 秒。您可以通过更改 来调整该时间ccounter = 60。那里的每个值等于 50 毫秒(1000 毫秒 = 1 秒)。

此外,请始终使用 AutoHotkey 及其文档http://ahkscript.org/(当前最新版本,新官方网站)!AutoHotkey 及其来自 autohotkey.com 的文档已过时,您在使用它们时可能会遇到一些问题!

答案4

这将起作用:

:*:rr::  
Goto ::ee  
return  
::ee::  
Send by the way  
return

相关内容