我想知道我是否可以暂停我的python程序1秒 - 不使用常规python,使用Tkinter模块 - 我想在1秒后更改标签的名称。我怎么能这样做?
答案 0 :(得分:1)
您似乎想要在一秒钟后安排一个动作。 它与暂停程序有很大不同,实际上你不需要这样做。
tkinter.Widget.after
方法几乎就是您正在寻找的方法。
它接受一个回调(即一个要调用的函数),以及一个延迟,之后应该调用前者。
所以你需要一个函数来设置标签的文本:
def set_text():
label['text'] = "A new text"
然后,您将它作为第二个参数传递给根小部件的after
方法,第一个参数是以毫秒为单位的延迟:
root.after(1000, set_text)
这将在一秒钟之后安排对set_text
功能的调用。
这是一个完整的例子,展示了after
方法的效果。
将显示包含Initial text
的标签,一秒钟后,其文字将更改为A new text
。
import tkinter as tk
def set_text():
label['text'] = "A new text"
root = tk.Tk()
label = tk.Label(root, text="Initial text")
label.pack()
root.after(1000, set_text)
root.mainloop()