Повні розв’язки, як у зошиті. Хочеш розібратися самостійно — під кожним завданням є «Пояснення з репетитором».
Сторінка 159
Завдання 35
Метод place та абревіатура tk
Розглянути команди програми «Доступ» (мал. 10.22), визначити призначення методу `place` для розміщення елементів і з'ясувати, чому бібліотеку `tkinter` називають коротко `tk`.
Розв’язання
Проаналізуйте код на малюнку 10.22, де є рядок `button.place(x=..., y=...)`. Це означає, що кнопка розміщується точно за координатами `x` і `y`, а не розтягується чи вирівнюється по центру як при використанні `pack`.
Знайдіть у початку коду команду `import tkinter as tk`. Це створює коротке ім'я `tk` для повної бібліотеки `tkinter`, щоб писати код лаконічніше (наприклад, `tk.Button` замість `tkinter.Button`).
Відповідь:
Метод `place` використовується для точного розміщення елементів за координатами; абревіатура `tk` створена командою `import tkinter as tk`.
Завдання 36
Програма-калькулятор на кнопках
Запропонувати коментарі до коду (мал. 10.24), пояснити, як змінити його так, щоб вікно мило чотири кнопки зі знаками арифметичних дій (+, -, *, /), і натискання на них виводило результат у вікно повідомлення.
Розв’язання
Створіть вікно, два текстових поля для введення чисел та кнопку «Результат» (або чотири окремі кнопки для операцій). Для прикладу розглянемо логіку з чотирма кнопками: створіть функцію `def add(event):`, яка отримує подію, читає значення з полів (`str_var1.get()`, `str_var2.get()`), додає їх і виводить повідомлення.
Додайте кнопки зі знаками `+`, `-`, `*`, `/`. Для кожної кнопки створіть окремий обробник події (наприклад, `def plus(event):`), який виконує відповідну операцію над змінними та виводить результат через `tkinter.messagebox.showinfo`.
Прив'яжіть події натискання миші до кнопок за допомогою методу `bind` або властивості `command`, передаючи функції, які виконують обчислення. Перевірте роботу програми: введіть числа і натисніть кнопку з знаком операції.
Відповідь:
Програма має чотири кнопки (+, -, *, /), кожна прив'язана до функції, яка приймає подію, читає значення з полів, виконує обчислення і виводить результат у вікно повідомлення.