Разработка простых приложений средствами Tkinter в Python

В статье рассмотрена возможность создания простых графических интерфейсов и описано создание приложения для рисования средствами tkinter в Python.

Аннотация статьи
Python
графические интерфейсы
десктопные приложения
tkinter
Ключевые слова

Пакет («Интерфейс Tk») является стандартным интерфейсом Python для инструментария Tcl / Tk GUI toolkit. Tk и tkinter доступны на большинстве платформ Unix, включая macOS, а также в системах Windows [1].

Поддержка Tkinter распространяется на несколько модулей. Большинству приложений потребуется основной tkinter модуль, а также tkinter.ttk модуль, который предоставляет современный набор тематических виджетов и API [1].

Десктопные приложения пишут на разных языках программирования: C++, C#, C, Python и других. Начинающим разработчикам проще всего использовать Python и его библиотеки для работы над графическими интерфейсами [2].

GUI (Graphical User Interface) – это графический интерфейс пользователя, оболочка программы, с которой мы взаимодействуем с помощью клавиатуры и мыши. На современных операционных системах почти все программы работают с графическим интерфейсом, и мы каждый день сталкиваемся с GUI: читаем статьи в браузере, набираем текст в редакторе или играем в игры [2].

Для создания простого графического интерфейса нужно подключить библиотеку Tkinter с помощью директивы import [3]. Далее создаётся главное окно приложения, в котором будут размещаться все графические элементы. Добавляем виджеты: визуальные элементы, выполняющие определённые действия. После чего создаём главный цикл событий: он включает в себя все события, происходящие при взаимодействии пользователя с интерфейсом. Виджеты являются ключевыми объектами в работе с Tkinter. Это аналоги тегов из HTML, которые позволяют создавать интерактивные и неинтерактивные элементы, например надписи или кнопки [2].

В качестве простого примера графического приложения была разработана программа, по логике работы напоминающая графический редактор Microsoft Paint: пользователь выбирает средство рисования, необходимые цвета из палитры, рисует, корректирует при необходимости и сохраняет результат. Разработка приложения осуществлялась средствами Tkinter Python, в среде PyCharm.

Интерфейс программы (главное окно) представлен ниже (рис. 1).

Рис. 1. Главное окно интерфейса приложения

По умолчанию был задан стандартный размер кисти и чёрный цвет (рис.2).

Рис. 2. Задание параметров цвета и размера кисти по умолчанию

Параметры использования элементов интерфейса задаются при помощи функций (рис.3).

Рис. 3. Задание параметров использования элементов интерфейса

Для выбора нужного цвета кисти пользователь открывает палитру, выбирает цвет и нажимает «Ok» (рис.4).

Рис. 4. Цветовая палитра приложения

Результат работы приложения представлен на рисунке 5.

Рис. 5. Результат работы приложения

Можно отметить, что интерфейс созданного графического приложения выглядит достаточно просто. Для создания более сложных интерфейсов можно использовать другие средства Python, например, Dear PyGui, который позволяет создавать в том числе динамические графики, динамические рисунки, пользовательские виджеты, динамические и статические таблицы. Tkiner является стандартной библиотекой, прост в освоении, а потому подойдёт, прежде всего, новичкам, для знакомства с логикой создания простых графических приложений средствами Python.

Рецензент – Рудометкин В. А. 

Текст статьи
  1. Tkinter – интерфейс Python. – URL: https://docs.python.org/3/library/tkinter.html (дата обращения: 15.01.2023).
  2.  Пишем десктоп-приложение на Python с помощью Tkinter. – URL: https://skillbox.ru/media/code/pishem-desktopprilozhenie-na-python-s-pomoshchyu-tkinter/ (дата обращения: 15.01.2023).
  3. Обучение Python GUI (уроки по Tkinter). – URL: https://pythonru.com/uroki/obuchenie-python-gui-uroki-po-tkinter (дата обращения: 15.01.2023).
Список литературы