[英]How to refresh the GUI window in Tkinter
我試圖用Tkinker制作一個簡單的GUI,當你按下一個按鈕時,它會在標簽上添加1。 但是,標簽只保留為0.有沒有辦法可以刷新它以使其保持最新狀態?
繼續我到目前為止所擁有的:
from Tkinter import *
clicks = 0
def click():
global clicks
global Window
clicks += 1
print 'ok', clicks
def close_window():
global Window
Window.destroy()
Window = Tk()
Number = Label(text = clicks)
close = Button(Window , text='exit' , command = close_window)
button = Button(Window,text = 'clickme' ,command = click)
button.pack()
close.pack()
Number.pack()
Window.mainloop()
clicks += 1
僅更改變量clicks
。
使用Label.config(text=...)
或Label['text'] = ...
來更改標簽文本。
def click():
global clicks
clicks += 1
Number.config(text=clicks) # <------
print 'ok', clicks
你幾乎擁有它,但對於你的標簽,你不想使用“文本”,你想要“textvariable”。 但是,這會將StringVar作為變量,這會強制一些繁忙的工作:
Window = Tk()
strclicks = StringVar()
Number = Label(textvariable=clicks)
並在click()中:
clicks += 1
strclicks.set(clicks)
使用“text”在創建時評估變量; 變量更新時,“textvariable”更新標簽。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.