An Introduction to Tkinter
前页 | Chapter 44. Basic Widget Methods | 后页

# Alarm handlers and other non-event callbacks

## after

`after(delay_ms, callback, args...)`. Register an alarm callback that is called after the given number of milliseconds (Tkinter only guarantees that the callback will not be called earlier than that; if the system is busy, the actual delay may be much longer). The callback is only called once for each call to after. To keep calling the callback, you need to reregister the callback inside itself:

        class App:
            def __init__(self, master):
                self.master = master
                self.poll() # start polling

            def poll(self):
                ...
                self.master.after(100, self.poll)

You can provide one or more arguments which are passed to the callback. This method returns an alarm id which can be used with after_cancel to cancel the callback.

## after_cancel

`after_cancel(id)`. Cancels the given alarm callback.

## after

`after(delay_ms)`. Wait for the given number of milliseconds. Note that in the current version, this also blocks the event loop. In practice, this means that you might as well do:

        time.sleep(delay_ms*0.001)

## after_idle

`after_idle(callback, args...)`. Register an idle callback which is called when the system is idle (that is, when there are no more events to process in the mainloop). The callback is only called once for each call to after_idle.

前页 | Home | 后页
Event callbacks | Up | Window management