Семінар з програмного забезпечення
Підручники з програмного забезпечення => Python => Тема розпочата: Sehza від Квт. 01, 2025, 01:16 PM
Python — одна з найпопулярніших мов програмування у світі, а бібліотека Tkinter є стандартним інструментом для створення графічних інтерфейсів користувача (GUI). У цій статті ми розглянемо основні віджети Tkinter, надамо приклади коду та пояснимо, як їх використовувати для створення простих, але функціональних програм. Цей матеріал буде корисним як для початківців, так і для тих, хто хоче поглибити свої знання в розробці GUI на Python.
Що таке Tkinter і чому варто його використовувати?Tkinter — це вбудована бібліотека Python, яка дозволяє створювати віконні додатки з кнопками, текстовими полями, мітками та іншими елементами інтерфейсу. Вона проста у використанні, легка для освоєння та підходить для створення як невеликих утиліт, так і більш складних програм. Завдяки своїй універсальності, Tkinter є чудовим вибором для розробників-початківців.
Основні віджети Tkinter: Приклади з кодомНижче наведено приклади найпоширеніших віджетів Tkinter із поясненнями та кодом. Ви можете скопіювати ці приклади та протестувати їх самостійно.1. Мітка (Label)Мітка використовується для відображення тексту або зображень у вікні.import tkinter as tk
window = tk.Tk()
window.title("Приклад Tkinter")
window.geometry("300x200")
label = tk.Label(window, text="Привіт, це мітка!", font=("Arial", 14))
label.pack(pady=20)
window.mainloop()
У цьому прикладі ми створили просте вікно з текстом "Привіт, це мітка!". Метод pack() розміщує віджет у центрі.
2. Кнопка (Button)Кнопка дозволяє користувачу виконувати дії при натисканні.import tkinter as tk
def button_click():
label.config(text="Ти натиснув кнопку!")
window = tk.Tk()
window.title("Кнопка Tkinter")
window.geometry("300x200")
label = tk.Label(window, text="Натисни кнопку нижче", font=("Arial", 12))
label.pack(pady=10)
button = tk.Button(window, text="Натисни мене", command=button_click, bg="green", fg="white")
button.pack(pady=10)
window.mainloop()
Тут ми додали кнопку, яка змінює текст мітки при натисканні. Аргументи bg і fg задають колір фону та тексту.
3. Текстове поле (Entry)Текстове поле дозволяє користувачу вводити дані.import tkinter as tk
def show_text():
entered_text = entry.get()
label.config(text=f"Ти ввів: {entered_text}")
window = tk.Tk()
window.title("Текстове поле")
window.geometry("300x200")
label = tk.Label(window, text="Введи щось:", font=("Arial", 12))
label.pack(pady=10)
entry = tk.Entry(window, width=20)
entry.pack(pady=10)
button = tk.Button(window, text="Показати", command=show_text)
button.pack(pady=10)
window.mainloop()
У цьому прикладі користувач може ввести текст у поле Entry, а після натискання кнопки текст відобразиться у мітці.
4. Прапорець (Checkbutton)Прапорець дозволяє користувачу вибирати кілька варіантів.import tkinter as tk
window = tk.Tk()
window.title("Прапорець Tkinter")
window.geometry("300x200")
var1 = tk.BooleanVar()
var2 = tk.BooleanVar()
check1 = tk.Checkbutton(window, text="Варіант 1", variable=var1)
check1.pack(pady=10)
check2 = tk.Checkbutton(window, text="Варіант 2", variable=var2)
check2.pack(pady=10)
def check_status():
label.config(text=f"Варіант 1: {var1.get()}, Варіант 2: {var2.get()}")
button = tk.Button(window, text="Перевірити", command=check_status)
button.pack(pady=10)
label = tk.Label(window, text="")
label.pack(pady=10)
window.mainloop()
Цей код створює два прапорці, і при натисканні кнопки відображається їхній стан (True або False).
5. Список (Listbox)Список дозволяє відображати кілька елементів, з яких користувач може вибрати один або кілька.import tkinter as tk
window = tk.Tk()
window.title("Список Tkinter")
window.geometry("300x200")
listbox = tk.Listbox(window, height=5)
items = ["Елемент 1", "Елемент 2", "Елемент 3", "Елемент 4"]
for item in items:
listbox.insert(tk.END, item)
listbox.pack(pady=10)
def show_selection():
selected = listbox.get(listbox.curselection())
label.config(text=f"Вибрано: {selected}")
button = tk.Button(window, text="Показати вибір", command=show_selection)
button.pack(pady=10)
label = tk.Label(window, text="")
label.pack(pady=10)
window.mainloop()
Цей приклад показує, як створити список і отримати вибраний елемент.
Поради для створення GUI з Tkinter- Організація віджетів: Використовуйте менеджери розміщення, такі як pack(), grid() або place(), щоб контролювати розташування елементів.
- Стилізація: Додавайте кольори, шрифти та розміри для покращення зовнішнього вигляду.
- Обробка подій: Зв'язуйте функції з віджетами за допомогою аргументу command.
- Модульність: Розбивайте код на функції для зручності підтримки.
ВисновокTkinter — це потужний інструмент для створення графічних інтерфейсів у Python. У цій статті ми розглянули основні віджети, такі як мітки, кнопки, текстові поля, прапорці та списки, і показали, як їх застосовувати на практиці. Спробуйте ці приклади самостійно, експериментуйте з кодом і створюйте власні додатки! Якщо ви хочете дізнатися більше про Python Tkinter, продовжуйте досліджувати документацію та приклади.