1
我正在嘗試創建一個變得越來越大的圓圈,並且爲此我需要添加一個延遲。我嘗試使用time.sleep()
,但發現不起作用,我需要使用.after()
。我已經嘗試過讓這個圈子成爲一個功能,但沒有成功。我曾嘗試在創建橢圓之前添加一個lambda,但那也不起作用。無論如何,我可以在新圈子製造之前添加延遲嗎? 謝謝。python 3 tkinter:如何將.after()添加到圖形
我的代碼: -
from tkinter import *
root = Tk()
c = Canvas(root, width = 500, height = 500)
c.pack()
oval = c.create_oval(0, 0, 1, 1)
for x in range(2, 200, 5):
c.delete(oval)
root.after(100, oval = c.create_oval(0, 0, x, x))
嗨,感謝您的幫助,它解決了我的問題。 root.mainloop()又做了什麼? – Regi
因爲tkinter是一個圖形用戶界面,所以說一個主要的計算程序是不同的。在一個主要的計算程序中,相互依次執行步驟以達成結果。 Tkinter是一個界面,所以必須始終準備好,等待一個不變的循環(root.mainloop),用於任何用戶鼠標點擊或按鍵等。 另外,由於我的解決方案解決了您的問題,請將其標記爲例外答案。 –