【发布时间】:2017-09-28 22:34:02
【问题描述】:
这个问题对我来说似乎是出了名的顽固。
我正在尝试每秒更新一次标签(在下面的 while 循环中的代码中称为 lbl)。问题是标签没有更新。该代码也没有抛出任何错误消息。
from tkinter import *
import tkinter
TIMER_START_MIN=5
TIMER_START_SEC=5*60
min,sec=divmod(TIMER_START_SEC,60)
banner_text="{:02d}:{:02d}".format(min,sec)
def timer_func():
global reset_button
global lbl
global TIMER_START_SEC
global banner_text
reset_button.config(state=tkinter.DISABLED)
while(TIMER_START_SEC>0):
mins,secs=divmod(TIMER_START_SEC,60)
banner_text="{:02d}:{:02d}".format(min,sec)
lbl.config(text=banner_text)
TIMER_START_SEC=TIMER_START_SEC-1
root=Tk()
top_frame=Frame(root)
top_frame.pack(side=TOP)
bottom_frame=Frame(root)
bottom_frame.pack(side=BOTTOM)
lbl=Label(top_frame,text=banner_text,font=('Helvetica', 36), fg='black')
lbl.grid(row=0,column=0)
start_stop_button=Button(bottom_frame,text="START",font=("Helvetica",24),command=timer_func)
start_stop_button.grid(row=0,column=0)
reset_button=Button(bottom_frame,text="RESET",font=("Helvetica",24))
reset_button.grid(row=0,column=1)
root.mainloop()
【问题讨论】:
-
这类问题在这个网站上可能已经被问了一百次了。你做过研究吗?如果你这样做了,但你没有找到任何东西,你能分享你使用的搜索词吗?也许我们可以让这个问题的答案更容易找到。