首页 > 解决方案 > tkinter 标签在 python 中未正确显示

问题描述

看代码!

root = Tk()
frame = Frame(root)
labelText = StringVar()
label = Label(frame, textvariable=labelText)
labelText.set("Connecting to the server...")



def welcome_note():
    time.sleep(5)
    labelText.set("Welcome!")

welcome_note()

label.pack()
frame.pack()

root.mainloop()

执行代码时它应该是“连接服务器”,然后在 5 秒后它应该显示“欢迎”

但它只在 5 秒后执行“欢迎”...

标签: pythonpython-3.xtkinter

解决方案


使用方法5秒后after调用welcome_note

def welcome_note():
    labelText.set("Welcome!")

root = Tk()
frame = Frame(root)
labelText = StringVar()
label = Label(frame, textvariable=labelText)
labelText.set("Connecting to the server...")
label.pack()
frame.pack()
# Calls welcome_note after 5 seconds
root.after(5000, welcome_note)
root.mainloop()

推荐阅读