-
Тема: поняття елемента керування, події, пов’язані з елементами керування, обробники цих подій мовою Python.
Мета:
вміє:
Хід уроку
1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.
2. Актуалізація опорних знань
Означити (описати) поняття, виділені жирним шрифтом, і порівняти з поданим текстом.
Об'єкт (від латинською objectum — предмет, явище) — це те, на що спрямована певна діяльність (на противагу суб'єкту, який здійснює таку діяльність). Кожний об'єкт має свою назву: «м'яч», «годинник», та низку властивостей (параметрів), значення яких описує об'єкт.
Подія — зміна властивостей об'єкта, взаємодія між об'єктами, утворення нового об'єкта або знищення наявного об'єкта.
Метод — дія, яку об'єкт може виконувати.
Клас визначає властивості деякої сутності та методи (дії, які вона здатна виконувати).
Об'єкт — окремий представник класу з окремим варіантом значеньвластивостей та їх значень.
3. Нові поняття та означення.
Елементи керування — це графічні об'єкти, розташовані на вікні програми для показу або введення даних, виконання дій або полегшення роботи: текстові поля, списки, перемикачі, кнопки, прапорці тощо.
Обробник події — це частина програми, що виконує певні дії у відповідь на подію (спричинену, наприклад, дією користувача).
Модуль (у мові програмування) — файл з кодом програми. У мові Python є стандартна бібліотека модулів, які при потребі підключають (імпортують) до кодів користувача. Після підключення (імпорту) модуля, програма отримує доступ до його класів, функцій та об'єктів. Зауважимо: модуль може бути написаний не лише мовою Python, але й, наприклад, C чи C++.
Модуль tkinter при використанні основного класу Tk дозволяє залучати до програми мовою Python такі елементи керування:
Розрізняють різні типи подій.
Позначення подій, породжених діями з мишею
Позначення подій, породжених натисканням клавіш
Алфавітні клавіші записують без кутових дужок (наприклад, 'L'). Для неалфавітних клавіш є зарезервовані слова. Наприклад, <Return> - Enter, <space>- пробіл. Комбінації клавіш пишуться через дефіс. Наприклад,
<Control-Shift> для одночасного натискання клавіш Ctrl і Shift.
Розташування елементів керування здійснюють за допомогою спеціальних методів пакування:
pack,
grid і
place.
4. Інструктаж з ТБ
5. Вироблення практичних навичок
Завдання 1. Створити програму мовою Python з використанням кнопки з написом «Надрукувати».
Натискання на кнопку має призводити до друкування на консолі тексту: «Текст на консолі».
Текст програми записати у файл з назвою Ваше прізвище_1.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 2. Використавши код до завдання 1, надати властивостям кнопки (ширині, висоті, кольорам тла й напису) значень, щоб отримати таке вікно.
Натискання на кнопку має призводити до друкування на консолі тексту: «Текст на консолі».
Текст програми записати у файл з назвою Ваше прізвище_2.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 3. Використавши код до завдання 2 і долучивши напис, створити програму, щоб отримати таке вікно.
Натискання на кнопку має призводити до друкування на консолі тексту: «Цей текст друкується на консолі при натисканні кнопки».
Текст програми записати у файл з назвою Ваше прізвище_3.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 4. Використавши код до завдання 3 і долучивши елементи керування Entry (з призначенням властивостей width і bd) та Text (з властивостями width, font і wrap), створити програму, , щоб отримати таке вікно.
Натискання на кнопку має призводити до друкування на консолі тексту: «Цей текст друкується на консолі при натисканні кнопки».
Текст програми записати з назвою Ваше прізвище_4.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 5. Використавши код до завдання 4 і долучивши елементи керування Radiobutton (з призначенням значень властивостей text, variable і value), створити програму, щоб отримати таке вікно.
Натискання на кнопку має призводити до друкування на консолі тексту: «Цей текст друкується на консолі при натисканні кнопки».
Текст програми записати з назвою Ваше прізвище_5.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 6. Створити програму з елементами керування Listbox (з призначенням значень властивостей selectmode і height) і Checkbutton (з призначенням значень властивостей text, onvalue, offvalue і variable), щоб отримати таке вікно.
Текст програми записати з назвою Ваше прізвище_6.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Текст програми записати з назвою Ваше прізвище_7.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Примітка. Є версії Python 3.*, при яких необов'язкова наявність такого рядка:
from tkinter import messagebox
Завдання 8. Створити програму для обчислення площі круга πr2 та довжини кола 2πr за значенням радіуса r, введеним користувачем. Використати елементи керування Entry, Button, Label та створити функцію для обчислень значень площі круга та довжини кола. Кольори заповнення тут і в наступних завданнях можуть відрізнятися від поданих на малюнках.
Текст програми записати з назвою Ваше прізвище_8.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 9. Створити програму з використанням елементів керування Entry, Text, Button, Label та функцією: натискання на кнопку робить видимим і невидимим напис.
Текст програми записати з назвою Ваше прізвище_9.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 10. Створити програму, що після натискання кнопки обчислить у саженях (1 м = 2.13 сажені) вираз (2 км + 456 м + 44 сажені) і виведе відповідний напис згідно з поданим зразком.
Текст програми записати з назвою Ваше прізвище_10.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
Завдання 11. Створити програму для вираження в саженях значення виразу … км + … м + … сажені. Значення вводить користувач. Натискання на кнопку має призводити до виведення у вікні обчислений результат.
Текст програми записати з назвою Ваше прізвище_11.py у теку, вказану вчителем. Порівняти з демонстраційним розв'язанням.
6. Підбиття підсумків уроку.
Виставлення оцінок.
7. Домашнє завдання
Створити програму для визначення в центнерах значення … кг + … ц + … т. Натискання на кнопку має призводити до виведення у вікні обчисленого результату (аналогічно завданню 11).
Текст упорядкувала Любов Іванівна Шевчун, вчитель Слов'янської гімназії Дарницького району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 02.10.2017 по 06.10.2017.