Event unbinding and virtual events
In addition to the bind method that you previously saw, you might find the following two event-related options useful in certain cases:
- Unbind: Tkinter provides the unbind option to undo the effect of an earlier binding. The syntax is as follows:
widget.unbind(event)
The following are some examples of its usage:
entry.unbind('<Alt-Shift-5>') root.unbind_all('<F1>') root.unbind_class('Entry', '<KeyPress-Del>')
- Virtual events: Tkinter also lets you create your own events. You can give these virtual events any name that you want. For example, let's suppose that you want to create a new event called
<<commit>>
, which is triggered by the F9 key. To create this virtual event on a given widget, use the following syntax:
widget.event_add('<<commit>>', '<KeyRelease-F9>')
You can then bind <<commit>>
to a callback by using a normal bind()
method, as follows:
widget.bind('<<commit>>', callback)
Other event-related methods can be accessed by typing the following line in the Python Terminal:
>>> import tkinter >>> help(tkinter.Event)
Now that you are ready to delve into real application development with Tkinter, let's spend some time exploring a few custom styling options that Tkinter offers. We will also have a look at some configuration options that are commonly used with the root window.