【问题标题】:How use shortkey as variable instead text如何使用快捷键作为变量而不是文本
【发布时间】:2019-02-02 05:19:48
【问题描述】:

这是我的代码:

key0 = {1}
key1 = {A}

Loop
{
    If (GetKeyState(key0, "P"))
    {
        Send {key1}
    }
    else
    {
        Send {key0}
    }

    sleep 500
}

F12::ExitApp

无法正常工作。不能将键用作变量。谁能给我解释一下怎么做?

【问题讨论】:

    标签: autohotkey


    【解决方案1】:

    发送命令中的正确语法是在变量周围加上% 符号。此外,您在声明 {A} 中有数字大括号 - 如果您使用 {A} 文字,则应该只是 A,那么就不可能这样做,例如{a down}。 例如。您将key0 传递给Getkeystate() - 第一个参数必须是键名,这与send 命令中的花括号不同。

    试试这个:

    key0 = 1
    key1 = A
    loop
    {
        if getkeystate(key0, "P")
        {
            send {%key1%}
        }
    }
    

    【讨论】:

    • 我不确定,但我只需要声明密钥。发送命令可以发送文本或密钥。我需要一秒钟。在我的示例中,{A} 是一个带有字母 A 的按钮。我可能需要这样的记录 {
    • 谢谢。但是您的示例将 A 作为文本而不是 Key 发送,并且游戏没有反应
    • @nim 尝试 sc01E 而不是 A 那么它应该可以工作。但结果可能取决于应用程序。如果您只想重新绑定更好的东西,请使用热键,而不是使用 getkeystate 循环 - 您可能会遇到很多困难。游戏可以使用不同的事件轮询方法。我建议在 Autohotkey 论坛上询问特定游戏以及您想要实现的目标。
    猜你喜欢
    • 2015-08-21
    • 1970-01-01
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多