了解为什么未分配我的AutoHotkey变量

时间:2019-01-24 17:35:12

标签: autohotkey

我正在尝试将字符串分配给变量,然后让热键发送该变量的值。

我已经有了一个正常运行的示例,其中我使用 f1 发送带有一些自动Autohotkey变量的文本字符串,例如%A_MM%%A_DD%和< strong>%A_YYYY%,可轻松实现日期戳:

 f1::
     Send, (WTC %A_MM%/%A_DD%/%A_YYYY% %A_Hour%:%A_Min%) :{space} ; press f1
 Return

我尝试编写此代码进行测试:

 v_test := "testing string in v_test"
 f2::
      MsgBox, %v_test%
 RETURN

但是消息框显示为空白。为什么消息框没有显示“ v_test中的测试字符串”?

1 个答案:

答案 0 :(得分:1)

这些变量从未初始化,因为该变量未包含在autohotkey脚本的auto-execute部分中。

要解决此问题,我必须在所有RETURN,EXIT,热键或热脚本之前,将变量声明放在脚本的顶部。我也可以在函数内部将变量写为GLOBAL,然后称为函数。