无法更新标签文字

时间:2019-02-28 11:05:04

标签: python python-3.x tkinter

我正在尝试运行一个简单的GUI,该GUI仅每几秒钟更改一次标签文本。我是使用tkinter的新手,并且不了解每件事的工作原理,但是从网上收集的资料中,after()方法应该调用我编写的用于更改标签文本的函数,但它不起作用? 任何帮助是极大的赞赏。

from tkinter import *
import time

root = Tk()
root.title("Blank")
root.geometry("480x240")

label = Label(
    root,
    text = "hello",
    font = ("Arial", 42)
)

label.pack(fill = BOTH, expand = True)

def updater():
    label.config(text = "Test 1")
    time.sleep(1)
    label.config(text = "Test 2")

root.mainloop()
root.after(2000, updater)

1 个答案:

答案 0 :(得分:1)

实际上我自己才知道。现在,工作代码如下所示:

from tkinter import *
import time

root = Tk()
root.title("Blank")
root.geometry("480x240")

label = Label(
    root,
    text = " ",
    font = ("Arial", 42)
)

label.pack(fill = BOTH, expand = True)

def changeString1():
    label.config(text = "Test 1")
    label.after(1000, changeString2)

def changeString2():
    label.config(text = "Test 2")
    label.after(1000, changeString1)


changeString1()
root.mainloop()

我还是tkinter的新手,我不知道这是否是可以接受的解决方案,但是它可以工作,所以我很高兴。