Перевод статьи markdrozdov “13 Python GUI Libraries”.
Python
Python это высокоуровневый язык программирования, он используется как язык общего назначения. Этот язык был создан Гвидо ван Россумом и впервые выпущен в 1991 году. Философия проектирования Python фокусируется на читаемости кода. Для этой цели в языке используется значительное количество пробелов.
Python предоставляет конструкции, позволяющие программировать к в малых, так и в больших масштабах. У этого языка очень большая стандартная библиотека. Он относится к языка с динамической типизацией. Также в нем есть автоматическое управление памятью.
Python поддерживает множество парадигм программирования, включая:
- объектно-ориентированную(ООП);
- императивную;
- функциональную;
- процедурную.
Графический интерфейс пользователя (GUI)
GUI это человеко-компьютерный интерфейс. Другими словами, это способ, с помощью которого люди могут взаимодействовать с компьютерами.
Как быстро сделать графический интерфейс на Python
Он использует окна, значки, меню. Манипулировать GUI можно как с помощью мышки, так и с помощью клавиатуры.
GUI-библиотека
GUI-библиотека содержит виджеты. Виджеты это наборы графических элементов управления.
При создании GUI программы обычно используется каскадный способ. Графические элементы управления добавляются поверх друг друга.
Python GUI
Когда вы пишете приложение с помощью Python, вам для этого понадобится использовать GUI.
Существует много вариантов Python GUI. Есть больше 30 кросс-платформенных фреймворков для программирования GUI на Python. 13 из них перечислены и кратко охарактеризованы ниже. (Возможно, вам будут интересны и другие библиотеки Python, о которых мы писали ранее).
1. Tkinter
Tkinter это набор инструментов, который может формировать GUI с помощью Python. Он позволяет вам запускать сценарии на Python в GUI-формате. Ссылка ведет на страницу с руководством по Tkinter.
2. Flexx
Многие GUI-библиотеки Python основаны на библиотеках, написанных на других языках, таких как C ++. Например, wxWidgets и libavg. Flexx создана на Python. Для отображения GUI использует веб-технологию.
3. CEF Python
Этот фреймворк нацелен на Windows, MAC OS и Linux. Основан на Google Chromium. Основное внимание в нем уделяется облегчению использования встроенного браузера в сторонних приложениях.
4. Dabo
Цель этого фреймворка – WxPython. Это трехуровневый фреймворк для разработки кросс-платформенных приложений.
5. Kivy
Kivy основан на OpenGL ES 2. У него есть собственный multi-touch для каждой отдельной платформы. Это событийно-ориентированный фреймворк, который прекрасно подходит для разработки игр.
6. Pyforms
Pyforms это фреймворк Python 2.7/3.x для разных окружений, используемый для разработки GUI приложения. В нем поощряется повторное использование кода.
7. PyGObject
С помощью PyGObject вы можете писать на Python приложения для проекта GNOME. Также можно писать приложения на Python, использующие GTK+.
Кратко про Python Tkinter | Как создавать GUI Приложения
8. PyQt
Qt это кросс-платформенный фреймворк. Он написан на С++. Это очень полная библиотека, включающая много инструментов и API. Широко используется во многих отраслях. Охватывает множество платформ.
9. PySide
Обёртка для Qt. PySide и PyQt отличаются тем, что последний является коммерчески доступным.
10. PyGUI
PyGUI предназначен для платформ Unix, Macintosh и Windows. Фокус этого MVC-фреймворка заключается в том, чтобы вписываться в экосистему Python с максимальной легкостью.
11. libavg
Это сторонняя библиотека, написанная на С++. Обладает следующими особенностями:
- показ элементов в форме переменных Python;
- система управления событиями;
- таймеры;
- поддержка логов.
12. PyGTK | PyGObject
«GTK+», широко используемая в Linux, является «GTK + «обёртка из» PyGTK». По сравнению с Kivy и PyQt, PyGTK очень легок для платформ Unix, Macintosh, Windows.
Этот MVC-фреймворк разработан Грегом Эвингом из университета Кентербери (Новая Зеландия). Его главный фокус – как можно более простая адаптация к экосистеме Python.
13. wxPython
Обертка кросс-платформенного GUI для Python на основе wxWidgets. Написана на С++.
Приведенный выше список GUI-фреймворков покрывает большую часть нужд разработчика. Выбор зависит от ваших потребностей.
Источник: techrocks.ru
Программирование с графическим интерфейсом пользователя Python (Tkinter) — Часть I
Сегодня вы узнаете, как создавать программы с графическим интерфейсом пользователя с использованием набора инструментов Python Tkinter.
Графический интерфейс пользователя, также известный как GUI, является одной из лучших функций в программировании, которая делает программу визуально более привлекательной, чем обычные текстовые программы, покрытые черным или любым другим статическим цветом. GUI делает взаимодействие с пользователем намного проще и последовательнее.
Программирование на Python с графическим интерфейсом
Чтобы создать программу с графическим интерфейсом пользователя на Python, вам понадобится набор инструментов с графическим интерфейсом. Один из широко используемых наборов инструментов, доступных в Python, — это Tkinter. Это один из самых стабильных и популярных инструментов графического интерфейса, который используют разработчики Python.
Установить модуль Tkinter
Модуль Tkinter по умолчанию доступен в операционной системе Windows. Однако, если вы используете любую другую операционную систему, вам нужно будет загрузить модуль отдельно.
Для ОС Windows
https://www.python.org/downloads/
Для ОС Linux
sudo apt-get install python-tk (для Python 2.x)
sudo apt-get install python3-tk (для Python 3.x)
Вы можете создавать элементы графического интерфейса, создавая экземпляры объектов из классов, предопределенных в модуле Tkinter, включенном в Tkinter Toolkit.
Некоторые из элементов графического интерфейса в модуле Tkinter перечислены ниже.
Фрейм: он содержит другие элементы графического интерфейса, такие как метка, кнопка, текстовое поле и т. Д.
Ярлык: отображает неотредактируемый текст или значки на макете экрана.
Кнопка: выполняет действие, когда пользователь активирует ее или нажимает с помощью мыши.
Ввод текста: принимает одну строку текста и отображает ее.
Текстовое поле: этот элемент графического интерфейса принимает несколько строк текста и отображает его.
Кнопка «Проверить»: позволяет пользователю выбрать или отменить выбор параметра.
Селективная кнопка: эта кнопка позволяет пользователю выбрать один вариант из нескольких перечисленных.
Программы с графическим интерфейсом пользователя традиционно управляются событиями. Управляемый событиями означает, что кнопки, значки или любой другой графический объект на экране реагирует на действия независимо от порядка, в котором они происходят. Они реагируют на действия, выполняемые пользователем, а не на логический поток, как мы видели раньше в текстовом программировании.
Пример программирования графического интерфейса пользователя Python
from Tkinter import *
root.title(«My First GUI»)
Первая строка программного кода импортирует модуль Tkinter из библиотеки Python в имя текущей программы.
Второй оператор используется для создания экземпляра объекта класса Tkinter Tk и назначается пользовательской переменной root.
Третий оператор использует метод title (), который описывает заголовок, отображаемый в строке заголовка окна. Он принимает строковый аргумент.
Третий оператор использует метод geometry (), который используется для установки размеров окна. Он принимает строку (а не целые числа) в качестве аргументов,
представляющих ширину и высоту окна, разделенных символом «x».
Следующий оператор, наконец, запускает приложение окна графического интерфейса пользователя и ждет, пока пользователь введет команду.
Примечание. У вас может быть только одно корневое окно в программе Tkinter. Если вы попытаетесь создать несколько окон в одной программе, программа выйдет из строя.
Фрейм Python Tkinter
Фрейм — это виджет или базовый виджет, который используется для размещения в другом виджете, таком как метки, текстовые поля и другие. Это важный первый шаг, поскольку без разработки фреймов ничего сделать нельзя. В основном он содержит другие виджеты.
app = Frame (корень)
Здесь мы передали root конструктору Frame. В результате новый фрейм помещается внутри корневого окна.
grid () есть у всех виджетов. Он связан с менеджером компоновки, который позволяет размещать виджеты во фрейме.
Метка Python Tkinter
Элементы графического интерфейса называются виджетами. Ярлык — один из самых простых виджетов. Он состоит из неотредактируемого текста или значков (или того и другого). Часто используется для обозначения других виджетов. Ярлыки не интерактивны.
Вы не создадите никакой команды, щелкнув ярлык. Но метки важны для именования других виджетов, чтобы конечный пользователь не запутался.
from Tkinter import *
root.title(«My First GUI»)
label1 = Label(frame1, text = «Here is a label!»)
Источник: dzen.ru
Приложение с графическим интерфейсом пользователя Python в кратчайшие сроки
Одной из наиболее важных частей современных приложений является сам GUI (графический интерфейс пользователя).
Это потому, что рынок настолько конкурентен и перенасыщен, что дело даже не в функциональности, а в том, кто может сделать его красивее и проще в использовании.
Сегодня мы узнаем, как создавать и создавать приложения с графическим интерфейсом пользователя на одном из самых популярных языков программирования Python.
Это короткое руководство будет объяснено построчно, и ему будет очень легко следовать, хотя у вас может не быть большого опыта работы с Python или программированием в целом.
Окружение
Для разработки этого приложения вам не потребуется много. Если вы уже знакомы с Python, вы можете перейти к следующей главе этой статьи.
Мой личный выбор для разработки кода и программного обеспечения — Visual Studio Code.
Далее нам понадобится установленный Python, поэтому, если вы используете Ubuntu или аналогичные дистрибутивы Linux, Python поставляется предварительно установленным.
Если это не так, вы можете установить его так:
sudo apt-get install software-properties-common sudo add-apt-repository ppa:deadsnakes/ppa sudo apt-get update sudo apt-get install python3.8
* на момент написания этой статьи Python 3.8 является последней стабильной версией, и для использования PPA рекомендуется использовать deadsnakes.
В других операционных системах, таких как windows или mac, вы собираетесь установить его, загрузив исполняемый файл установки и просто запустив его.
Библиотека Tkinter
Нам также необходимо установить библиотеку Tkinter для разработки:
sudo apt-get install python3-tk
Пакет tkinter («интерфейс Tk») — это стандартный интерфейс Python для набора инструментов Tk GUI.
Кодирование
В начале нашего кодирования с импортом необходимых библиотек:
import tkinter
После того, как мы импортировали их, мы можем использовать их в нашем коде, и обычно ваш редактор кода сможет распознать ключевые слова из этих библиотек и максимально упростить вам набор текста.
Затем создается окно, которое мы будем использовать для добавления элементов и сделать его главным окном нашего приложения с графическим интерфейсом.
window = tkinter.Tk()
Виджет верхнего уровня Tk, который представляет собой в основном главное окно приложения. С ним связан интерпретатор Tcl.
После инициализации окна все, что вам нужно сделать, это вызвать основной цикл Tk, и он выполнит все команды, которые вы установили для графического интерфейса.
window.mainloop()
Mainloop обрабатывает любые события, такие как нажатия кнопок или записи текстового поля, которые происходят после его выполнения, до тех пор, пока окно не будет закрыто.
Запустите свой файл Python с помощью команды:
python3 GUI.py
Вот наше первое окно!
Это только начало нашего приложения, и теперь нам нужно настроить наше окно!
Добавить заголовок в наше окно очень просто:
window.title(«Python GUI»)
Здесь важно отметить, что каждая отдельная команда, которую мы хотим выполнить для нашего окна, должна быть перед «window.mainloop ()», потому что в противном случае она не будет отображаться в GUI.
Размер окна
Установка определенного размера окна очень важна, потому что вам может потребоваться больше места для ваших элементов, которые мы добавим позже!
Как это сделать:
window.geometry(«450×250»)
Первая часть — это ширина, за которой следует разделение цифрами «x» и высота.
После настройки основных параметров окна мы готовы добавлять элементы в наше приложение с графическим интерфейсом.
Элементы
Здесь мы можем использовать различные типы элементов, которые предоставляются нам библиотекой Tkinter, но мы сосредоточимся на четырех наиболее важных для каждого приложения с графическим интерфейсом пользователя.
Это: Метка. , Кнопка, Ввод (ввод), и текст
Этикетка
В каждом графическом интерфейсе важно создать текстовый дисплей для пользователя, использующего программу.
label = tkinter.Label(window, text=»Some label text»,width = 50)