0
我想要做一個tkinter小部件,將主動更新。請注意,倒計數()被稱爲第一! 我的問題是,一旦我輸入持續時間倒計時,它會關閉舊的小部件,因爲它應該(在這裏沒有看到)。但是,具有倒數計時器的新窗口小部件甚至不會顯示。如果我在IDE中停止,那麼小部件會彈出,當進程停止時剩下多少時間。使Tkinter倒數計時器更新積極
def update(start, finish):
timeRemaining = finish - start
timeDisplay = Label(text = "%s" % timeRemaining)
timeDisplay.pack(side = BOTTOM)
while True:
#check = timeRemaining.timetuple()
timeRemaining = str(finish - datetime.datetime.now())
timeDisplay.config(text=timeRemaining)
timeDisplay.pack()
time.sleep(.01)
def countdown(duration):
root.destroy()
title = Label(text = "Countdown")
title.pack()
duration = float(duration)
print(duration)
start = datetime.datetime.now()
startHours = int(duration/60)
startMinutes = int(duration % 60)
startSeconds = (((duration%60) - startMinutes)*60)
finish = start + datetime.timedelta(hours = startHours, minutes = startMinutes, seconds = startSeconds)
update(start, finish)
我希望我給了足夠的信息。如果在這裏有什麼東西沒有上下文沒有意義,讓我知道。
任何想法? 謝謝。
http://stackoverflow.com/questions/2400262/ python-gui-in-tkinter –
實際上,我在查找幫助時已經看到了,但我認爲在每次迭代中帶有睡眠函數的while循環都可以工作。這是唯一的方式是這樣的嗎? – Seth
是的...因爲你不允許任何時候在你的循環中更新你需要把控制權交還給主tk循環 –