
Конструктор уроків

Кожна програма має свій інтерфейс.
Інтерфейс - це сукупність засобів і правил, що забезпечують взаємодію пристроїв обчислювальної системи або програм.
Існує 2 види інтерфейсу програм: командний та графічний.
У командному інтерфейсі, то взаємодія користувача та комп'ютера відбувається за допомогою команд, які користувач вводить в командний рядок з клавіатури.
Графічний інтерфейс є більш зручнішим для користувача, адже взаємодія відбувається за допомогою кнопок, полів та інших елементів управління.
Ми навчимося створювати програми, які будуть мати свій власний графічний інтерфейс мовою програмування Python. I почнемо із поняття форми.
Форма - об'єкт, в якому можна розмістити різні компоненти (елементи керування), зокрема кнопки, поля, написи, меню та інше.
Зазвичай форми представляють собою звичайні програмні вікна, в яких будуть відображатися вищезазначені елементи. Тож і ми спробуємо створити вікно програми мовою Python з різноманітними властивостями.
Мова Python більше орієнтована на командний інтерфейс, але в ній існує спеціальний модуль за допомогою якого можна створити інтерфейс користувача. Модулем у програмуванні називають певний пакет додаткових функцій для роботи над розробкою програм. Сам IDLE нe зможе створити окреме вікно, максимум, що ми можемо отримати - це рядки з текстом, безпосередньо у вікні самого IDLE.
IDLE нe може створювати окреме вікно програми самостійно і для цього ми повинні підключити додатковий модуль. Для підключення будь-яких модулів використовується конструкція:
import назва_модуля
Також можна використовувати наступну конструкцію, для того, щоб потім повторно не вказувати модуль при використанні функцій:
from нaзвa_модуля import *
В цьому випадку ми вказуємо, що з певного модуля ми імпортуємо всі функції (*).
Модуль, який нам знадобиться для створення графічного інтерфейсу програми, називається tkinter. За допомогою цього модуля можна виконувати як окремі графічні побудови так і створити повноцінний графічний інтерфейс користувача. Отже, перший рядок коду в нашому новому файлі буде завжди виглядати так:
from tkintеr import *
2. Створення вікон та валаштовування їx властивостей
Після підключення модулів, створимо вікно. Для створення вікна використовується функція Tk(), але, оскільки таких вікон можна створити нескінченно багато, то кожному вікну присвоюється певне ім’я :
назва_вікна= Tk ()
Назва вікна може складатися з великих і малих літер англійського атфавіту, цифр та знаку нижнього пробілу. Наприклад, створимо вікно Window1:
Windowl=Tk(), або w=Tk()
Назва вікна потрібна для того, щоб потім при написанні коду ми змогли звертатися до даного вікна, присвоювати йому певні властивості та вставляти у нього елементи управління. І ще дуже важлива річ: після створення вікна та його елементів управління потрібно вказати інтерпретатору, що ми закінчили працювати з вікном за допомогою метода mainloop(). Застосовується він так:
назва_вікна. mainloop ()
У випадку із нашим вікном цей рядок виглядатиме так:
Window1.mainloop(), або w.mainloop()
Давайте ці всі команди та рядки коду об'єднаємо у один файл, який ми створили та подивимося на те, що ми отримали:
from tkinter import *
Window1=Tk()
Window1.mainloop()
Спробуємо запустити нашу програму. Як бачимо у нас створилося пусте вікно.
Ми можемо створювати велику кількість вікон, але в залежності від того, як ми розмістимо рядки коду, ці вікна будуть по різному відображатися. Наприклад, якщо функцію створення та метод закриття одного вікна ми розмістимо послідовно з функціями та методами іншого, то друге вікно буде створене тільки після того, як користувач закриє перше:
Window1=Tk()
Window1.mainloop()
Window2=Tk()
Window2.mainloop()
Для того, щоб краще зрозуміти написане. рекомендую повторити дії та запустити команду і побачити на практиці, як це працює. А для того, щоб створити ці вікна паралельно, ми повинні послідовно розмістити відповідні команди між собою:
Window1=Tk()
Window2=Tk()
Window1.mainloop()
Window2.mainloop()
Тепер ви знаєте, як створити вікна за допомогою модуля tkinter. A зараз попрацюємо з налаштовуванням їх властивостей. До основних властивостей вікна належать:
title(”Заголовок”) — заголовок вікна. За замовчуванням заголовок вікна Tk;
minsize(x,y) — мінімальний розмір вікна у пікселях: x – ширина, у - висота. Якшо не встановити цю властивість, то вікно не матиме обмежень у зменшенні;
maxsize(x,y) — максимальний розмір вікна у пікселях: х - ширина, у - висота. Якшо не встановити цю властивість, вікно може приймати повні розміри екрану користувача;
geometry(”400x200+450+150”) — розміри та положення вікна відносно розширення екрана у пікселях. 400 - ширина, 200 – висота, 450 - відстань від лівого краю екрану, 150 - відстань від верхнього краю екрану. Параметри відступу (відстань від лівого краю екрану та відстань від верхнього краю екрану) не є обовязковими, вони додаються за бажанням. Зверніть увагу! Всі числа були введені як приклад:
resizable(х,у) - чи може користувач змінювати розміри вікна і на скільки: х - ширина у – висота. Для заборони змінення розмірів вікна замість параметрів встановити нулі.
Це основні властивості, які ви будете використовувати у навчанні для створення простих проектів за допомогою мови програмування Python.
До вікна вони застосовуються таким чином:
назва_вікна.властивість(параметри)
Наприклад, встановимо розміри нашого вікна Windowl: ширина та висота по 500 пікселів:
Window1.gеometry(500x500)
Аналогічно застосовуються й інші властивості, та є й винятки із правил. Наприклад, для того, щоб застосувати певний колір фону нашого вікна виконується інша конструкція:
назва_вікна[“bg”]=”колір”
Bg скорочено від background (фон), а параметром є назва кольору на англійській мові взята в лапки.
Наприклад, встановимо зелений колір для нашого вікна:
Windowl["bg"]=”green”
Ha самостійне опрацювання! Знайти якомога більше кольорів, які можливо встановити до вікна tkinter в мові програмування Python.
Розглянемо приклад завдання: створити вікно світло-блакитного кольору зі сталими розмірами: ширина 400, висота – 250 та з заголовком «Моє перше вікно».
Спочатку створюємо вікно, назвемо його як завгодно, наприклад My_window. Потім встановнмо його розміри за допомогою властивості geometry, заборонимо змінювати його розміри та встановимо колір: блакитний колір (light blue). Слід додати заголовок вікна та закриваючу команду mainloop. Ми отримали:
from tkinter import *
My_window=Tk()
My_window.title("Моє перше вікно")
My_window.geometry("400x250")
My_window.resizable(0,0)
My_window["bg"]="light blue"
My_window.mainloop()
1
перегляньте відео пояснення:
2
Виконайте вправу як підсумок та прикріпіть результат
Рефлексія від 9 учнів
Сподобався:
Так: 8
Ні: 1
Зрозумілий:
Так: 8
Ні: 1
Потрібні роз'яснення:
Ні: 9
Так: 0