如何在 Tkinter 中使用定时器
Tkinter root
窗口具有专用方法 after
,此方法会在给定时间后调用函数-
after(ms, func)
ms
是时间间隔,单位为 ms
,
func
是被调用的函数名称。
try:
import Tkinter as tk
except:
import tkinter as tk
import time
class Clock():
def __init__(self):
self.root = tk.Tk()
self.label = tk.Label(text="", font=('Helvetica', 48), fg='red')
self.label.pack()
self.update_clock()
self.root.mainloop()
def update_clock(self):
now = time.strftime("%H:%M:%S")
self.label.configure(text=now)
self.root.after(1000, self.update_clock)
app=Clock()
self.root.after(1000, self.update_clock)
在 1000 ms
之后调用该函数本身,因此,update_clock()
函数以 1000 ms
为间隔执行一次,在 Tkinter 标签中显示当前时间。
注意
请注意,
after
不能保证方法中设定的时间会非常精确调用该函数,因为如果应用程序繁忙,而 Tkinter 是单线程的,则该延迟时间可能会延长。声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。