Тема 13(7): Події. Вікна повідомлень
Чек-лист уроку:
Програми з
Д/з: опрацювати:
§2.6
с.108 №1 - письмово
веб-сторінку уроку- Тема 13(7)
З вікном під час виконання віконного проекту можуть відбуватися події .
Такими подіями, наприклад, можуть бути:
Сlicк — вибір будь-якої точки вікна, позначення події в мові Python - <1>
DbIClck — подвійне клацання у будь-якій точці вікна, позначення події в мові Python - <Double-1>
close - закривання вікна, позначення події в мові Python - <Destroy>
Create — створення вікна, позначення події в мові Python - <Expose>
Кеурrеss нагиснення будь-якої клавіші на клавіатурі, позначення події в мові Python - <KeyPress>
MouseMove — переміщення вказівника в межах вікна виконання проєкту, позначення події в мові Python - <Motion>
та інші.
З будь-якою подією, яка може відбутися з вікном, можна пов'язати підпрограму, яка буде виконуватися одразу після настання цієї події. Така підпрограма називасться обробник події. У проекті можуть бути кілька обробників різних подій.
Підпрограма, яка пов'язана з певним об’єктом, називається методом цього об'єкта.
У мові Рythоn обробник події для вікна створюють як окрему процедуру та пов'язують її з вікном, використовуючи метод bind.
У загальному вигляді команда пов'язування обробника події з вікном, що має ім'я roоt, має такий вигляд:
root.bind(<назва події>', <ім'я_обробника_події>)
Обробник події у загальному вигляді записують так:
dеf <iм'я.обробника_події> (event):
<команди, які будуть виконуватися за настання події>
Значення властивостей вікна можна змінити:
командою присвоювання, загальний вигляд якої такий: <ім'я вікна>['<властивість>] = “<значення>
наприклад, команда присвоювання root[‘bg’]=’green’ змінить значення властивості вікна колір фону та встановить зелений колір вікна з іменем root;
командою використання метода вікна, загальний вигляд якої такий: <ім'я вікна».<ім'я методу>(‘<параметри>’)
наприклад, відома вам команда root.geometrу(‘<рядок параметрів>’) змінить значення властивостей розміри вікна та відступи вікна, a команда root.title(‘<текст>') змінить значення властивості заголовок вікна
Для отримання поточного значення розмірів і положення вікна використовують функції:
winfo_width() — ширина вікна
winfo_height() — висота вікна
winfo_x() — відстань лівої межі вікна від лівого краю екрана
winfo_у() — відстань верхньої межі вікна від верхнього краю екрана
Щоб установити нове значення, потрібно в рядок параметрів метода geometry() замість числа підставити значення змінної. Для цього слід:
перед рядком параметрів увести символ f;
у рядку параметрів на місці, де потрібно вставити значення змінної, увести символи {}, а між ними ім'я змінної: наприклад, root.geometry(f’300х200+500+{t}’)
У мові Рython можна створити вікна повідомлень кількох видів.
Для цього призначені команди:
showinfo('<текст у рядку заголовка>', ‘<текст повідомлення’) — створення інформаційного вікна
showwarning(‘<текст у рядку заголовка>', ‘<текст повідомлення>’) — створення вікна попередження;
showerror('<текст у рядку заголовка>', ‘<текст повідомлення>’) — створення вікна оповіщення про помилку
та інші.
Для відкриття вікна повідомлень із заданим текстом заголовка та виведення у ньому заданого тексту повідомлення потрібно приєднати до проекту. модуль tkinter.messagebox i використати команду відповідно до призначення вікна
Завданння
Скопіюйте поданий програмний код та створіть на основі нього прогрпмний проект. Збережіть, запустіть та проаналізуйте його роботу.
from tkinter import*
def click (event):
w=root.winfo_width()+140
t=root.winfo_y()+50
root.geometry(f'{w}x320+200+{t}')
root=Tk()
root.geometry('480x320+200+200')
root.bind('<1>', click)
Завдання
Відтворіть цей код у середовищі програмування. Проаналізуйте його роботу
Завдання (Д/З)
Виконайте письмово