1. Створюємо Кнопки в Tkinter
Навіщо нам це потрібно?
Уяви, що ти створюєш калькулятор. Хто б став ним користуватись, якщо не можна було б ввести дані і натиснути на кнопку рівно? Або, можливо, ти розробляєш форму для введення даних. Ну що ж, тут кнопки і поля введення теж дуже доречні.
Кнопки і поля введення дозволяють користувачу напряму впливати на програму і її поведінку. Це як чарівна паличка, що перетворює пасивне вікно в активний інструмент.
Як виглядає кнопка в Tkinter?
Бібліотека Tkinter пропонує віджет Button для створення кнопок. Цей віджет досить гнучкий і дозволяє налаштувати текст кнопки, колір, а також призначити дію, яка буде виконана при натисканні.
Ось як це робиться:
import tkinter as tk
# Створюємо основне вікно
root = tk.Tk()
root.title("Мій додаток")
# Створюємо кнопку і додаємо її у вікно
button = tk.Button(root, text="Натисни мене!", command=lambda: print("Кнопка натиснута!"))
button.pack()
# Запуск основного циклу
root.mainloop()
Зверни увагу на параметр command: він дозволяє прив'язати певну дію до кнопки. У цьому прикладі, при натисканні кнопки в консоль буде виводитися повідомлення "Кнопка натиснута!".
Налаштуємо кнопку по красі
Ти, звісно, хочеш, щоб твої кнопки не лише працювали, але й виглядали привабливо. Давай додамо трохи креативу:
button = tk.Button(root, text="Натисни мене!", command=lambda: print("Кнопка натиснута!"), bg="blue", fg="white", font=("Helvetica", 16))
button.pack(pady=10)
bgіfg— відповідають за колір фону і тексту відповідно.font— дозволяє вибрати шрифт і його розмір.pady— відступи по вертикалі, щоб кнопка дихала.
2. Поля Введення з Tkinter
Переходимо до полів введення тексту. Це такі невеликі текстові віконечка, куди твій користувач може вводити свої побажання (і не тільки).
Простий введення тексту
Створити поле введення простіше простого за допомогою віджета Entry:
entry = tk.Entry(root)
entry.pack()
Але що користі від просто створеного поля, якщо ти не можеш отримати дані? Давай навчимося це робити!
def get_input():
user_input = entry.get()
print(f"Користувач ввів: {user_input}")
entry = tk.Entry(root)
entry.pack()
button = tk.Button(root, text="Отримати введення", command=get_input)
button.pack()
Круто, тепер у нас є кнопка, яка виводить на екран те, що було введено в поле.
Прикрашаємо поле введення
Як і у випадку з кнопками, поля введення також можна стилізувати:
entry = tk.Entry(root, font=("Arial", 14), fg="black", bg="lightyellow")
entry.pack(padx=5, pady=5)
Тут ми задали шрифт, колір тексту і фону. Параметри padx і pady додають відступи по горизонталі і вертикалі відповідно.
3. Практичне застосування
Давай зберемо все разом і створимо додаток, у якому користувач може ввести дані і натиснути кнопку для обробки введеної інформації. Ми створимо невеликий калькулятор, який складає введені числа.
import tkinter as tk
def calculate():
try:
# Отримання значень полів
number1 = float(entry1.get())
number2 = float(entry2.get())
# Розрахунок суми
result = number1 + number2
# Оновлення тексту результату
result_label.config(text=f"Результат: {result}")
except ValueError:
result_label.config(text="Введіть коректні числа!")
# Створюємо основне вікно
root = tk.Tk()
root.title("Простий Калькулятор")
# Поля введення для чисел
entry1 = tk.Entry(root, width=10)
entry1.pack(pady=5)
entry2 = tk.Entry(root, width=10)
entry2.pack(pady=5)
# Кнопка для розрахунку
calculate_button = tk.Button(root, text="Додати", command=calculate)
calculate_button.pack(pady=10)
# Мітка для відображення результату
result_label = tk.Label(root, text="Результат: ")
result_label.pack()
# Запуск основного циклу
root.mainloop()
Ось так просто ми створили маленький, але гордий додаток-калькулятор, який дає користувачу можливість вводити дані і бачити результат.
Відлагодження під час роботи з віджетами
Працюючи з кнопками і полями введення, ти можеш натрапити на кілька типовий помилок. Наприклад, часто буває, що обробник кнопки не запускається. Знайди причину — пропущено параметр command або помилка в синтаксисі лямбда-функції.
Також часто виникають помилки, пов'язані з некоректним введенням даних. Тому не забувай перевіряти і обробляти введення, як ми це зробили в нашому калькуляторі, щоб виключити проблему.
Ось і все на сьогодні! Тепер ти знаєш, як додати кнопки і поля введення у свій додаток, щоб взаємодія з користувачем стала інтерактивною і цікавою. Наступний крок — це обробка подій при натисканні кнопок, але про це вже в наступній лекції!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ