Top.Mail.Ru

Создание стильного GUI с CustomTkinter в Python

Создание стильного GUI с CustomTkinter в Python

Python славится своей простотой и широким спектром библиотек. Для создания графических интерфейсов одним из популярных решений является библиотека Tkinter, встроенная в стандартную библиотеку Python. Однако стандартный Tkinter визуально устарел и не поддерживает современные интерфейсные тренды. Тут на сцену выходит CustomTkinter — современное расширение Tkinter, которое позволяет создавать красивые и адаптивные графические интерфейсы.

В этой статье мы рассмотрим возможности CustomTkinter, его установку, ключевые элементы и примеры использования.


Что такое CustomTkinter?

CustomTkinter — это библиотека для создания современного графического интерфейса, построенная поверх Tkinter. Она использует современные стили оформления (тёмная/светлая тема, закруглённые углы, анимации и др.), сохраняя при этом всю силу и простоту стандартного Tkinter.

Основные преимущества:

  • Поддержка светлой и тёмной темы

  • Стильные виджеты: кнопки, поля ввода, слайдеры, вкладки и т.д.

  • Полная совместимость с обычным Tkinter

  • Простота в использовании


Установка

Для начала работы необходимо установить пакет:

pip install customtkinter

Также рекомендуется использовать Python версии 3.7 или выше.


Пример простого приложения

Создадим минимальное окно с кнопкой:

import customtkinter as ctk

# Установка темы
ctk.set_appearance_mode("Dark")  # или "Light"
ctk.set_default_color_theme("blue")  # другие: green, dark-blue

# Создание окна
app = ctk.CTk()
app.geometry("400x300")
app.title("Пример на CustomTkinter")

# Кнопка
def click():
    print("Нажато!")

btn = ctk.CTkButton(master=app, text="Нажми меня", command=click)
btn.pack(pady=20)

# Запуск
app.mainloop()

Настройка внешнего вида

CustomTkinter позволяет гибко изменять цветовую тему и внешний вид:

ctk.set_appearance_mode("System")  # Автоопределение по системе
ctk.set_default_color_theme("green")  # можно указать кастомный .json файл

Популярные виджеты

Вот список часто используемых элементов интерфейса:

  • CTkButton — кнопка

  • CTkEntry — поле ввода

  • CTkLabel — текстовая метка

  • CTkCheckBox — чекбокс

  • CTkSwitch — переключатель

  • CTkSlider — слайдер

  • CTkProgressBar — прогресс-бар

  • CTkTabview — вкладки

  • CTkFrame — контейнер для виджетов


Интерактивные темы, которые можно добавить:

Ты можешь выбрать, какие из тем раскрыть дальше. Вот варианты:

  1. 🎨 Создание пользовательской темы (custom theme)

  2. 🗂 Работа с вкладками и фреймами

  3. 🔘 Добавление радиокнопок и чекбоксов

  4. Индикаторы прогресса и загрузки

  5. 🧩 Интеграция с другими библиотеками (например, matplotlib)

  6. 💬 Создание модальных окон и диалогов

  7. 📐 Адаптивная вёрстка с использованием grid и pack

  8. 🌍 Поддержка мультиязычности интерфейса

 

Автор:

84

Читайте также

0 комментариев

Оставьте комментарий

Комментарии

×
Подпишитесь на наш Telegram-канал, чтобы быть в курсе всех новостей и акций!
Подписаться