1 of 12

Алгоритмізація та програмування

Йосиф Ривкінд  /  Тетяна Лисенко

Людмила Чернікова  /  Віктор Шакотько

Інструктаж з БЖД. Віконні проекти. Вікно, його властивості

Події з вікном, обробник події

2 of 12

Комп’ютерні мережі / Віконні проекти

Віконні проекти

Поміркуйте

3 of 12

Алгоритмізація та програмування / Віконні проекти  

Віконні проекти

4 of 12

Обробник події у мові Python.

Події та їх обробники

Подія – зміна властивостей об’єкта, взаємодія між об’єктами, створення нового або знищення існуючого об’єкта.

root.bind(‘<подія>’),<ім’я_обробника_події>) команда пов’язування обробника події з вікном, що має ім’я root

Призначення подій у мові Python

Подія

Позначення в мові Python

Click – клацання лівої кнопки миші

<Button-1> або<1>

DblClick – подвійне клацання лівої кнопки миші

<Double-Button-1>або <Double-1>

MouseMove – рух вказівника по вікну

<Motion> (англ.-рух)

KeyPress – натискання будь-якої клавіші на клавіатурі

<KeyPress>

Сreate – створення вікна

<Expose> (англ.-розкривати)

Close – закривання вікна

<FocusOut>(англ.-вихід фокуса)

5 of 12

Алгоритмізація та програмування / Події та обробники

Події та їх обробники

Обробник події у мові Python.

Загальний вигляд обробника подій такий:

def <ім’я_обробника_події>(event):

<команди, які будуть виконуватися під час настання події>

(англ. define – визначити, event - подія)

def <ім’я_обробника_події>(event) рядок заголовка обробника подій.

Наприклад, для обробника події з іменем click рядок заголовка буде таким: def click(event):

6 of 12

Обробник події у мові Python.

Розглянемо приклад процедури click – обробника події Click для вікна, під час виконання якої зміняться значення властивостей вікна.

1команда приєднання до проекту модуля tkinter

2рядок заголовка обробника подій з іменем click

3 команди змінення значень властивостей вікна (команди обробника події потрібно записувати з відступом праворуч від лівої межі вікна редактора коду)

4 команди створення вікна та пов’язування з ним обробника події (записуємо від лівої межі вікна)

Задача1 (приклад)

3

2

4

1

7 of 12

Комп’ютерні мережі / Події та обробники

Задача2 (приклад)

Події та їх обробники

Створити програму, яка згенерує вікно розміром 300 на 200 пікселів, синього кольору із заголовком «Початковий вигляд». Передбачити дві події: 1 – натиснення лівої кнопки миші (розмір вікна 400 на 300 пікселів, колір – жовтий, заголовок – «Вигляд змінено»), 2 – натиснення правої кнопки миші (вікно повертається до початкового вигляду).

А) Імпортуємо модуль tkinter, створюємо вікно із заданими характеристиками:

Зберігаємо, запускаємо, переглядаємо із задоволенням результат роботи:

Б) Пишемо обробник події для лівої кнопки (відразу після імпорту модуля tkinter):

В) Пишемо обробник події для правої кнопки (після функції left_click):

Г) Тепер залишилось пов’язати події та обробники подій. Для цього використаємо метод bind (в кінці програми, перед методом mainloop())

8 of 12

Алгоритмізація та програмування / Редагування проекту

 

Пригадайте

Засоби створення та редагування проекту

9 of 12

Алгоритмізація та програмування / Підпрограми

 

Модулі

Модуль — це файл, який містить код для виконання певного завдання. Модуль може містити змінні, функції, класи тощо.

Давайте створимо модуль. Напишіть наступний код та збережіть його як файл example.py: Тут ми визначили функцію add() всередині модуля з ім’ям example. Функція приймає два числа та повертає їх суму.

Імпорт модулів в Python

Ми можемо імпортувати визначення з одного модуля до іншого або в інтерактивний інтерпретатор Python. Для цього використовується ключове слово import. Щоб імпортувати наш раніше визначений модуль example, потрібно використати наступну команду:

Цей рядок коду не імпортує імена функцій, визначених у модулі example, напряму в нашу програму. Цей рядок імпортує лише ім’я модуля example.

Використовуючи ім’я модуля, ми можемо отримати доступ до функцій модуля за допомогою крапки .. Наприклад:

Імпорт модулів із Стандартної бібліотеки Python

Стандартна бібліотека Python містить понад 200 модулів. Припустимо, ми хочемо отримати значення числа Пі. Для цього потрібно імпортувати модуль math, а потім використовувати виклик math.pi. Наприклад

10 of 12

«Працюємо з комп’ютером»

Йосиф Ривкінд  /  Тетяна Лисенко  /  Людмила Чернікова  /  Віктор Шакотько

https://www.youtube.com/watch?v=fJvFZ5d-CQU&ab_channel=TaskInformatics

Практична робота № 3 «Проекти з підпрограмами та розгалуженнями»

11 of 12

Йосиф Ривкінд  /  Тетяна Лисенко  /  Людмила Чернікова  /  Віктор Шакотько

Надайте відповідь на запитання:

12 of 12

Домашнє завдання:

Йосиф Ривкінд  /  Тетяна Лисенко  /  Людмила Чернікова  /  Віктор Шакотько

7 клас

§ 2.5 ( стор. 96-100) Опрацюйте.

Виконайте практичну роботу.