#If指令

时间:2019-08-15 20:36:50

标签: autohotkey

var1 := "this works"

#If WinActive("")
d::d
#If

var2 := "this doesn't"

x::
    MsgBox, %var1%, %var2%
return

触发热键时,它仅显示var1,就像根本不存在var2一样。
为什么会发生这种情况?如何从热键访问var2?
我无法将var2向上移动,因为我的实际代码是在两个文件中拆分的。

1 个答案:

答案 0 :(得分:2)

您不能在热键或热字符串之间或之后定义变量。 热键/热字符串终止代码行和行

的自动执行
var2 := "this doesn't"

永远都不会成为现实,因为永远不会执行。

必须定义一个变量

  • auto-execute section(首次返回或热键之前的脚本顶部)中,
  • 或在热键/热字符串中
  • 或在标签(子例程)中
  • 或函数中。