Разработка графического интерфейса на Python:Tkinter против PyQt [закрыто]

StackOverflow https://stackoverflow.com/questions/1094155

Вопрос

Если вы хотите разработать пользовательский интерфейс на Python, какой из них выбрать:TkInter или PyQt?

Я только начал работать с TkInter и смог создать несколько простых пользовательских интерфейсов с элементарными виджетами, такими как метка, кнопка, текстовое поле и т. д.Просто интересно узнать, насколько хорош PyQt по сравнению с TkInter?

ваше здоровье

Это было полезно?

Решение

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

Реальных (потенциальных) недостатков всего два:

PyQt доступен только под лицензией GPL.Это означает, что если вы выпустите свой код, он должен быть доступен по совместимой лицензии в соответствии с условиями Исключение Nokia из GPL, или по коммерческой лицензии (которая стоит денег).В этом отличие от Qt, который теперь доступен по лицензии LGPL.

PyQt по умолчанию не включен в установку Python.Вам придется упаковать библиотеку самостоятельно.(У Ars Technica есть хорошая статья о том, как сделать это для Windows и OS X.)

Другие советы

PyQt сейчас является нашим основным набором инструментов для графического интерфейса, и после года разработки я не хочу возвращаться ни к чему другому.Он стабильный, зрелый, кроссплатформенный и полностью нативный.Даже системные диалоговые окна (например, для открытия файлов) используются вашей операционной системой.

Я настроил свою тему XP, и теперь мои приложения оформлены соответствующим образом.Это создает очень профессиональный вид, не сравнимый с таким набором инструментов, как Swing.API обширен и выходит за рамки чисто графического интерфейса, например виджетов.Он поддерживает подключение к базе данных, печать, многопоточность (я использовал его, и он работает просто великолепно)...Я даже использую его для создания PDF-файлов (никаких других внешних библиотек не требуется).Я бы порекомендовал книгу Марка Саммерфилда.Быстрое программирование графического интерфейса с помощью Python и Qt', чтобы набрать скорость.Имейте в виду, что Qt поставляется с построителем графического интерфейса (конструктором Qt), который является лучшим из тех, что я когда-либо использовал (а я перепробовал множество из них).
Я даже использую этот конструктор для создания макетов и показа их пользователям (это так просто!).

Я представил его двум другим разработчикам и не слышал, чтобы они жаловались...

Я использую tkinter для небольшие приложения с простым интерфейсом.Мне это очень нравится, даже несмотря на отсутствие хорошего ВИЗИВИГ редактор может стать проблемой для более крупного приложения.

Для больших приложений PyQt может быть лучшим выбором.У него очень хороший дизайнер экранов, но с лицензированием могут возникнуть проблемы.

Окончательно, wxPython может быть хорошей альтернативой, поскольку не имеет этих недостатков.

PyQt действительно прост в освоении, и документация для Qt также работает для PyQt, также есть порты на .NET и Java.Итак, это фея, кросс-платформенная и кросс-языковая.Также у вас есть PyQt, интегрированный в Эрик ИДЕ.

Поддержка стилей CSS также великолепна.

Посмотрите новый установщик OpenSuSE, чтобы узнать, что с ним можно сделать.

Вы можете создавать огромные графические интерфейсы с помощью Tkinter.Если вам нравится попробовать модуль pytkgen, он помогает создавать графический интерфейс Tkinter из определений JSON: https://github.com/tmetsch/pytkgen

Я использую PyQt — кроссплатформенный, простой в работе и надежный.

я использовал ТкИнтер очень легкий, и я не могу найти смысла делать tkInter лучше, чем PyQt.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top