Autohotkey 如何将上次用户输入存储为变量?

Autohotkey 如何将上次用户输入存储为变量?,autohotkey,Autohotkey,我的当前代码读取用户从10到56的2位输入 是否有一种方法可以将最后一次用户输入保存到变量中,以便以后在代码中的某个地方使用它 这是我的代码 如果用户输入11,我想将11保存在tht变量中,以便以后使用它 如果用户输入21,我希望它在该变量中存储21 1:: Input Key, L1 if Key=1 { ; do code } if Key=2 { ; do code } return

我的当前代码读取用户从10到56的2位输入

是否有一种方法可以将最后一次用户输入保存到变量中,以便以后在代码中的某个地方使用它

这是我的代码

如果用户输入11,我想将11保存在tht变量中,以便以后使用它 如果用户输入21,我希望它在该变量中存储21

1::
Input Key, L1


if Key=1
            {
             ; do code
}
if Key=2
            {
             ; do code
}
return

2::
Input Key, L1


if Key=1
            {
             ; do code
}
if Key=2
            {
             ; do code
}
return
global myVar
编辑的代码

myVar=0

#o::
MsgBox %myVar% - 1 

return
所以,如果用户输入11,它将设置myVar=11。 然后我尝试对myVar-1进行子跟踪,并尝试在MsgBox中打印,但它没有? 它显示的是11-1,而不是11减去1 我将在MsgBox的intead之后使用Send,%myVar%-1


谢谢

我猜你需要同时按下两个键,如果按1,则按2来做你想得到的东西12,等等。。

只需使用一个全局变量

1::
Input Key, L1


if Key=1
            {
             ; do code
}
if Key=2
            {
             ; do code
}
return

2::
Input Key, L1


if Key=1
            {
             ; do code
}
if Key=2
            {
             ; do code
}
return
global myVar
->这样定义的变量在程序中的任何地方都可以访问。

然后在一系列If语句中定义myVar

1::
    Input Key, L1


    if Key=1
    {
        myVar:=11
        ; do code
    }
return

自动热键中有两种类型的赋值语句:
=
&
:=

  • line1=%g\u编号%1;这是一个字符串

  • line2:=g_编号-1;这是一个表达式

  • 如果g_编号=5

    line1
    将计算为
    5-1
    line2
    将计算为
    4

    完整代码
    您好,谢谢您的好主意,所以请编辑我的代码部分。当我尝试使用MsgBox时,它实际上并没有减去myVar-1。请使用myVar:=myVar-1,然后使用MsgBox打印它。