Тема 13(7):  Події. Вікна повідомлень

Чек-лист уроку:

Д/з: опрацювати:

З вікном під час виконання віконного проекту можуть відбуватися події . 

Такими подіями, наприклад, можуть бути:

З будь-якою подією, яка може відбутися з вікном, можна пов'язати підпрограму, яка буде виконуватися одразу після настання цієї події. Така підпрограма називасться обробник події. У проекті можуть бути кілька обробників різних подій. 

Підпрограма, яка пов'язана з певним об’єктом, називається методом цього об'єкта.

У мові Р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 можна створити вікна повідомлень кількох видів. 

Для цього призначені команди:

Для відкриття вікна повідомлень із заданим текстом заголовка та виведення у ньому заданого тексту повідомлення потрібно приєднати до проекту. модуль tkinter.messagebox i використати команду відповідно до призначення вікна



Посилання на On-line-середовищe Python https://repl.it

Завданння

Скопіюйте поданий програмний код та створіть на основі нього прогрпмний проект. Збережіть, запустіть та проаналізуйте його роботу.

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)

Завдання

Відтворіть цей код у середовищі програмування. Проаналізуйте його роботу

Завдання  (Д/З)

Виконайте письмово