我正在尝试显示和更新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
答案 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
你的错误:
您应该在Status
命令中使用vStatus
代替GuiControl
。
当您关闭GUI时,您没有停止循环,因此IfWinNotExist
检测窗口是否存在,如果不存在,它将销毁所有gui变量并退出循环。所以你可以再次按 Win + n 并再次启动gui。
注意:
如果你想在gui开始时从0
每次开始计算杀戮,那么在kills=0
之后将#n::
移到右边