请帮忙检查我的 Autohotkey(1.1.13.01) 脚本:
#!r:: Reload
Sleep 1000
MsgBox, 4,, The script could not be reloaded. Open it for editing?
IfMsgBox, Yes, Edit
return
global gg := 10
#!t:: MsgBox % "gg= " . gg
myMsgBox(text)
{
MsgBox % "mynum:" . text
}
#!y:: myMsgBox(%gg%) # gg does not carry 10 into myMsgBox
无论 Alt+Win+t 还是 Alt+Win+q 都不会显示变量扩展。我希望gg=10
在 MsgBox 中看到,但我只看到gg=
。
答案1
全局变量将在自动执行部分定义:
global gg := 10
#!r:: Reload
Sleep 1000
MsgBox, 4,, The script could not be reloaded. Open it for editing?
IfMsgBox, Yes, Edit
return
#!t:: MsgBox % "gg=" . gg
#!y:: myMsgBox(gg)
myMsgBox(text){
MsgBox % "mynum:" . text
}
答案2
您还应该在新行中添加 Reload 命令,否则其下面的行将不会被执行。
#!r:: ; new line here
Reload
Sleep 1000
; ... rest of your script
要让热键执行多个命令,请将第一行放在热键定义下方,然后让最后一行返回。请参阅http://ahkscript.org/docs/Tutorial.htm#Launch