Тема уроку: «Події. Обробники подій».
Перевірка домашнього завдання.�
Події та їх обробники.
Click
вибір будь-якої точки вікна
DblClick
подвійне клацання лівої кнопки мишки в довільній точці вікна
Close
закривання вікна
Сreate
створення(відкриття)вікна
MouseMove
переміщення вказівника миші у вікні виконання проекту
Під час виконання проекту з об’єктами можуть відбуватися події.
З вікном можуть відбуватися такі події:
Події та їх обробники.
KeyPres – подія, яка буде відбуватися при натисненні будь-якої клавіші на клавіатурі.
З будь-якою подією, яка може відбуватися з вікном, можна пов’язати фрагмент проекту, який буде виконуватися одразу після настання цієї події.
Такий фрагмент проекту називається обробник події.
Фрагмент проекту, який пов’язаний з певним об’єктом, називається методом цього об’єкта.
Обробник події у мові Python.
У мові Python обробник події для вікна створюють як окрему підпрограму та пов’язують її з вікном, використовуючи метод bind (з англ. – пов’язувати).
Підпрограма – це окремо виділена частина проекту, яка має своє ім’я та яку можна за цим іменем запустити на виконання.
У Python розрізняють підпрограми двох видів: процедури і функції.
Процедура – це підпрограма, результатом виконання якої є створення компонента (вікна та ін.) або змінення значень властивостей існуючого, виведення певного тексту, створення зображення тощо.
Метод – це процедура або функція, що пов’язана з певним об’єктом.
Функція – це підпрограма, результатом виконання якої є одне або кілька значень: числа, рядки тексту та ін.
Обробник події у мові Python.
Подія | Позначення в мові Python |
Click – клацання лівої кнопки миші | <Button-1> або<1> |
DblClick – подвійне клацання лівої кнопки миші | <Double-Button-1>або <Double-1> |
MouseMove – рух вказівника по вікну | <Motion> (англ.-рух) |
KeyPress – натискання будь-якої клавіші на клавіатурі | <KeyPress> |
Сreate – створення вікна | <Expose> (англ.-розкривати) |
Close – закривання вікна | <FocusOut>(англ.-вихід фокуса) |
root.bind(‘<подія>’),<ім’я_обробника_події>) – команда пов’язування обробника
події з вікном, що має ім’я root
Призначення подій у мові Python
Обробник події у мові Python.
Загальний вигляд обробника подій такий:
def <ім’я_обробника_події>(event):
<команди, які будуть виконуватися під час настання події>
(англ. define – визначити, event - подія)
def <ім’я_обробника_події>(event) – рядок заголовка обробника подій.
Наприклад, для обробника події з іменем click рядок заголовка буде таким: def click(event):
Обробник події у мові Python.
Розглянемо приклад процедури click – обробника події Click для вікна, під час виконання якої зміняться значення властивостей вікна.
3
2
4
1
1 – команда приєднання до проекту модуля tkinter
2 – рядок заголовка обробника подій з іменем click
3 – команди змінення значень властивостей вікна (команди обробника події потрібно записувати з
відступом праворуч від лівої межі вікна редактора коду)
4 – команди створення вікна та пов’язування з ним обробника події (записуємо від лівої межі вікна)
Працюємо з комп’ютером.