Tkinter widgets have two methods for adding arbitrary code to the event queue on a delay: after() and after_idle().
Basic use of after() looks like this:
import tkinter as tk root = tk.Tk() root.after(1000, root.quit) root.mainloop()
In this example, we're setting root.quit to run after 1 second (1,000 milliseconds). In the background, root.quit is added to the event loop, but with the condition that it shouldn't be executed until at least 1 second from when after() was called. During that 1 second, any other events in the queue will be executed first. The command might be executed later than 1 second, depending on what's being processed already in the event queue, but no sooner.
The after_idle() method ...