Выбрать главу

Тимур Машнин

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

Исходный код

Исходный код к примерам можно скачать по адресу https://github.com/novts/python-gui.

Введение

Де факто Python является наиболее популярным объектно-ориентированным языком программирования, который используется для веб-разработки и анализа больших данных.

И конечно, Python — это интерактивный язык программирования, который предоставляет широкий спектр возможностей для создания графического интерфейса пользователя.

PyQt — это библиотека графического фреймворка Qt для языка программирования Python.

А Qt кью-ти — это кроссплатформенный инструментарий для разработки программного обеспечения на языке программирования C++, такого как графические интерфейсы, работа с сетью, базами данных и XML.

PyQt работает на всех платформах, поддерживаемых Qt — Linux и другие UNIX-подобные ОС, Mac OS и Windows.

И существуют 2 версии: PyQt5, поддерживающий Qt 5, и PyQt4, поддерживающий Qt 4.

PyQt практически полностью реализует возможности Qt, включая набор виджетов графического интерфейса, доступ к базам данных с помощью SQL, парсер XML и так далее.

PyQt также включает в себя Qt Designer— дизайнер графического интерфейса пользователя с генерацией Python кода из файлов, созданных в Qt Designer.

PySide — это также библиотека графического фреймворка Qt для языка программирования Python.

Основное отличие PySide от PyQt — это лицензии под которыми распространяются эти две обёртки Qt.

PyQt5 распространяется под GPL и коммерческой лицензией.

А PySide2 распространяется как Qt под GPL, LGPL и коммерческой лицензией.

То есть если вы пишите открытое ПО — можно использовать как PyQt5, так и PySide2.

Но если вы пишите закрытое/коммерческое ПО — бесплатно можно использовать только PySide2, а для использования PyQt5 потребуется покупать коммерческую лицензию.

Tkinter — это самая популярная библиотека для создания графического интерфейса пользователя или настольных приложений.

Tkinter — это комбинация стандартного графического интерфейса пользователя Tk и Python.

А Tk — это кроссплатформенная библиотека графического интерфейса с открытым исходным кодом.

Tkinter входит в стандартную библиотеку Python.

И Tkinter — это свободное программное обеспечение, распространяемое под Python-лицензией.

TKinter поставляется с хорошей документацией, что является основным ее достоинством.

И получить ответы на свои вопросы здесь легко, так как у Tkinter тысячи пользователей, потому что эта библиотека используется в течение очень долгого времени.

Kivy — это бесплатная среда Python с открытым исходным кодом для разработки кросс-платформенных приложений с поддержкой мультитач с пользовательским интерфейсом.

Kivy создана поверх OpenGL и для создания пользовательских интерфейсов дает возможность один раз написать код и запустить его на разных платформах Windows, MacOSX, Linux, Android, iOS и Raspberry.

WxPython — это обёртка библиотеки кроссплатформенного графического интерфейса пользователя wxWidgets, написанной на языке программирования C++.

Это еще одна из альтернатив Tkinter, которая поставляется вместе с Python.

И WxPython реализована в виде модуля расширения Python.

Dear

PyGUI — это простая и легкая библиотека графического интерфейса пользователя, так как она полностью связана с языком программирования Python.

Dear PyGui предоставляет оболочку библиотеки С++ Dear ImGui, которая имитирует традиционный графический интерфейс.

Это кроссплатформенная среда приложений с графическим интерфейсом пользователя, которая отображает естественный графический интерфейс платформы.

Здесь мы перечислили наиболее широко используемые и лучшие доступные фреймворки графического пользовательского интерфейса Python.

И вы можете выбрать наиболее подходящую вам среду для разработки графического интерфейса Python.

Далее мы более подробно разберем каждую библиотеку.

Библиотека PyQt

PyQt — это библиотека, которая позволяет использовать библиотеку графического интерфейса Qt в Python.

Сама библиотека Qt написана на C ++.

Самая последняя версия библиотеки — это PyQt5, и она поддерживает последнюю версию Qt5.