如何更新AutoHotkey GUI Text控件?

时间:2014-12-10 03:39:41

标签: user-interface autohotkey

我正在尝试显示和更新gui元素(文本字符串)。谁能告诉我这里做错了什么?初始文本永远不会被循环中的更新文本替换。

kills=0

#n::
Gui,Add,Text,vStatus, starting the killing
Gui,Show,w250 h375
Loop
{
GuiControl,,vStatus, killed %kills% Glorks!
kills+=1
Sleep,3000
}
return

1 个答案:

答案 0 :(得分:4)

这是工作代码:

kills=0

#n::
    Gui,Add,Text,vStatus, starting the killing
    Gui,Show,w250 h375, Glorks counter
    Loop
    {
        IfWinNotExist, Glorks counter
        {
            Gui, Destroy
            return
        }
        GuiControl,,Status, killed %kills% Glorks!
        kills+=1
        Sleep,3000
    }
return

你的错误:

  1. 您应该在Status命令中使用vStatus代替GuiControl

  2. 当您关闭GUI时,您没有停止循环,因此IfWinNotExist检测窗口是否存在,如果不存在,它将销毁所有gui变量并退出循环。所以你可以再次按 Win + n 并再次启动gui。

  3. 注意: 如果你想在gui开始时从0每次开始计算杀戮,那么在kills=0之后将#n::移到右边