我是一個初學者的python程式員,我一直在制作這個告訴現在幾點的應用程式,但是當我運行它時,什么也沒有發生。程式正在運行,但它沒有顯示在螢屏上。這是我的應用程式代碼。
import time
import tkinter as tk
root = tk.Tk()
root.geometry('400x400 200-200')
root.title('clock')
lable = tk.Label(root , font=('unispace' , 30 , 'bold' ) , text = 'temporary' , bg = 'blue' , fg = 'white')
lable.grid(row = 0 , column = 0 , sticky = 'nsew')
l = 1
while l != 0:
seconds = time.time()
current_time = time.ctime(seconds)
lable.config(text = current_time)
lable.grid(row = 0 , column = 0 , sticky = 'nsew')
time.sleep(1)
root.mainloop()
有人可以幫我解決這個問題嗎?
uj5u.com熱心網友回復:
tkinter與所有 GUI 庫一樣,是事件驅動。當你創建一個圖形元素時,實際上什么都沒有發生。所做的只是發送訊息。直到root.mainloop. 您需要以事件驅動的方式考慮這些問題。您不能使用time.sleep也不能進行無限回圈。
您需要使用root.after在一秒鐘后請求回呼。這可以更新 UI 并在一秒鐘后請求另一個回呼。
def update():
seconds = time.time()
current_time = time.ctime(seconds)
lable.config(text = current_time)
lable.grid(row = 0 , column = 0 , sticky = 'nsew')
root.after( 1000, update )
update()
root.mainloop()
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/465748.html
上一篇:breezypythonguiaddRadiobuttonGroup拋出意外的AttributeError:“str”物件沒有屬性“_root”
