Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Середовища програмування
Властивості та методи елементів керування. Кнопка
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування та події
Елементи керування — це графічні об’єкти, розташовані на вікні програми для показу або введення даних, виконання дій або полегшення роботи: текстові поля, списки, перемикачі, кнопки, прапорці тощо.
Властивості характеризують стан елемента керування, методи — дії, які він може виконати, то події — зовнішній вплив на елемент керування, на який цей елемент може реагувати
Елемент керування умовно можна описати формулою:
Елемент керування = властивості (стан) + методи (дії) + події (зворотні зв’язки)
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування та події
Три основні типи подій:
Приклади подій взаємодії з мишею:
<Button-1> — клацання лівою кнопкою миші;
<Button-2> — клацання середньою кнопкою миші;
<Button-3> — клацання правою кнопкою миші;
<Double-Button-1> — подвійне клацання лівою кнопкою миші;
<Motion> — рух миші.
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування та події
При описі події натискання клавіш клавіатури літерні клавіші можна записувати без кутових дужок (наприклад, ’L’). Для неалфавітних клавіш існують спеціальні зарезервовані слова:
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування кнопка
Для додавання елемента керування кнопка до вікна програми з графічними елементами з використанням модуля tkinter, використовують команду Button().
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування кнопка
Об’єкт кнопка має властивості:
text | напис на кнопці |
width, height | ширина й довжина (у знакомісцях) |
bg | колір (скорочено від background) |
fg | колір напису (скорочено від foreground) |
font | шрифт і його розмір |
padx | відступ від межі до об’єкта по горизонталі |
pady | відступ від межі до об’єкта по вертикалі |
Змінити властивість об’єкта можна за допомогою методу configure.
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування кнопка
Якщо програму доповнити командами додавання кнопки 2 , то отримаємо вікно з двома кнопками, які за замовчуванням розміщуються по центру верхнього краю
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Елементи керування кнопка
Властивості методу pack():
expand: | якщо дорівнює True, то елемент управління заповнює все вікно | |
fill: | визначає, чи буде елемент управління розтягуватися, щоб заповнити вільне поле | X (розтягується за горизонталлю), Y (розтягується за вертикаллю), BOTH (розтягується за горизонталлю і вертикаллю) |
side: | вирівнює елемент управління щодо сторін вікна. | TOP (за замовчуванням, вирівнюється зверху, по центру), BOTTOM (по центру, по нижній основі), LEFT (за лівою межею), RIGHT (за правою межею) |
Ці властивості імпортують з модуля tkinter:
from tkinter import TOP, BOTTOM, RIGHT, LEFT
Робота з комп'ютером
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Вправа 1. Сторони горизонту.
Завдання. Складіть програму, яка за допомогою кнопок ілюструє сторони горизонту
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Середовища програмування
Обробники подій, пов’язаних з елементами керування
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Обробник подій
Обробник події — це частина програми, що виконує певні дії у відповідь на подію (спричинену, наприклад, дією користувача).
Описують подію за допомогою функції користувача.
Наприклад, подія «натиснуто кнопку» button_click() викликатиме команду print, за якою у вікні середовища отримаємо результат.
У вікні середовища отримаємо результат — Привіт
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Обробник подій
Для опрацювання натиснення на кнопку в конструкторі кнопки потрібно встановити параметр command, надавши йому посилання на функцію, яка діятиме при натисненні
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Алгоритми та програми
Алгоритми та програми
Обробник подій
Зв’язувати об’єкт керування, подію та дію можна й за допомогою методу bind.
У функцій-обробників, які викликають через bind, а не через властивість command, має обов’язково бути параметр event, через який передається подія.
Тоді виклик цієї функції задається конструкцією:
Об’єкт bind('<подія>', назва_функції)
Робота з комп'ютером
Чашук О.Ф., вчитель інформатики ЗОШ№23, Луцьк
Вправа 2. Перетворення кольору.
Завдання. Створіть програму, у якій вікно змінюватиме колір фону на зелений після клацання лівою кнопкою миші й на червоний — після клацання правою.