如何在函式之後停止 Tkinter?
Tkinter 函式可以透過執行緒的概念建立,我們可以在其中定義函式何時執行或停止。可以使用 **after(time, callback)** 函式安排 Tkinter 函式。
假設我們建立了一個回撥函式,該函式會在一段時間後強制關閉主視窗。有時我們可能需要停止函式的排程。為了取消或停止回撥函式的特定排程,我們可以使用 **after_cancel(widget)** 函式。
示例
在給定的示例中,指令碼將在 3 秒後關閉主視窗,但在初始化 **after_cancel** (parent) 後,它將停止執行 **after** 函式。
#Import the required Libraries from tkinter import * from tkinter import ttk #Create an instance of tkinter frame win = Tk() #Set the geometry of tkinter frame win.geometry("750x270") #Initialize a Label widget Label(win, text= "This window will get closed after 3 seconds...", font=('Helvetica 20 bold')).pack(pady=20) #Automatically close the window after 3 seconds win.after_cancel(win) win.after(3000,lambda:win.destroy()) win.mainloop()
輸出
執行以上程式碼將顯示一個視窗,並在螢幕上顯示一些訊息。
如果我們刪除 **win.after_cancel(win)** 這行程式碼,視窗將在 3 秒後自動關閉。
廣告