【发布时间】:2014-02-23 15:48:18
【问题描述】:
我正在创建一个名为time_display 的StringVar,其中包含时尚3:14:02 的字符串,以及窗口中应该(理论上)反映对所述StringVar 的更新的单个标签。但是,当我调用updateTime 来检查时间并更新它时,我在无限循环中崩溃了。我所做的其他调整没有导致无限循环,但也没有更新时钟。我做错了什么?
from tkinter import *
from tkinter import ttk
import time
root = Tk()
root.title("Clock")
def updateTime(var):
hours = time.localtime().tm_hour
if hours == 0:
hours = 12
minutes = time.localtime().tm_min
if minutes < 10:
minutes = '0' + str(minutes)
else:
minutes = str(minutes)
seconds = time.localtime().tm_sec
if seconds < 10:
seconds = '0' + str(seconds)
else:
seconds = str(seconds)
current_time = str(hours) + ':' + minutes + ':' + seconds
var.set(current_time)
root.after(500, updateTime(var))
time_display = StringVar()
updateTime(time_display)
ttk.Label(root, textvariable=time_display).grid(column=0, row=0)
root.mainloop()
【问题讨论】:
标签: python python-3.x tkinter tk