На этом шаге мы рассмотрим именование событий.
Теперь рассмотрим события, поддерживаемые библиотекой Tkinter, и правила написания их наименований. Наименование события записывается в следующем формате:
< [<Префиксы, разделенные дефисами>-]<Тип события>[-<Дополнение>] >
Обязательным компонентом является только тип события. Все поддерживаемые библиотекой события вместе с их типами приведены в таблице 1. Помимо этого, для каждого события там указан числовой код типа, который может пригодиться при обработке событий.
| Тип | Условие возникновения | Код |
|---|---|---|
| Button | Нажатие кнопки мыши | 4 |
| ButtonRelease | Отпускание ранее нажатой кнопки мыши | 5 |
| MouseWheel | Вращение колесика мыши на компоненте | 38 |
| Enter | Наведение курсора мыши на компонент | 7 |
| Motion | Перемещение курсора мыши внутри компонента | 6 |
| Leave | Увод курсора мыши с компонента | 8 |
| KeyPress | Нажатие клавиши | 2 |
| KeyRelease | Отпускание ранее нажатой клавиши | 3 |
| FocusIn | Получение компонентом фокуса ввода | 9 |
| FocusOut | Потеря компонентом фокуса ввода | 10 |
| Activate | Изменение состояния компонента с недоступного для ввода (такой компонент закрашен серым) на доступное | 36 |
| Deactivate | Изменение состояния компонента с доступного для ввода на недоступное | 37 |
| Мар | Помещение компонента в контейнер с применением одного из диспетчеров компоновки | 19 |
| Unmap | Удаление компонента из контейнера | 18 |
| Expose | Компонент или окно, в котором он находится (или их части), стали видимыми | 12 |
| Visibility | Окно (или его часть), в котором находится компонент, стало видимым | 15 |
| Configure | Изменение размеров компонента (например, вследствие изменения размеров окна) | 22 |
| Destroy | Уничтожение компонента | 17 |
Префиксы указывают на клавиши-модификаторы, которые должны удерживаться, чтобы событие возникло, и количество повторений этого события. Список поддерживаемых модификаторов приведен в таблице 2.
| Название | Описание |
|---|---|
| Double | Событие должно возникнуть дважды в течение короткого промежутка времени |
| Triple | Событие должно возникнуть трижды в течение короткого промежутка времени |
| Shift | Должна удерживаться клавиша <Shift> |
| Control | Должна удерживаться клавиша <Ctrl> |
| Alt | Должна удерживаться клавиша <Alt> |
| Any | Отсутствие любых дополнительных условий |
Дополнения поддерживаются только двумя событиями:
<Button-3>
<3> ;
Рассмотрим несколько примеров написания наименований событий:
На следующем шаге мы рассмотрим класс Event.