Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What GUI toolkit looks best for a native LAF for Python in Windows and Linux?

I need to decide on a GUI/Widget toolkit to use with Python for a new project. The target platforms will be Linux with KDE and Windows XP (and probably Vista). What Python GUI toolkit looks best and consistent with the native look and feel of the run time platform?

If possible, cite strengths and weaknesses of the suggested toolkit.

Thank you,

Luis

like image 212
Luis Soeiro Avatar asked Dec 30 '22 07:12

Luis Soeiro


2 Answers

Python binding of Wx is very strong since at least one of the core developer is a python guy itself. WxWdgets is robust, time proven stable, mature, but also bit more than just GUI. Even is a lot is left out in WxPython - because Python itself offers that already - you might find that extra convenient for your project. Wx is the fastest especially on Win, because it lets render the OS and yes WxLicense is de facto LGPL. With XRC you have also a way like Glade to click you to a UI that you can reuse by different projects and languages. What is one major reason for me to use Wx is the fast and helping mailing list, never seen a flamewar, you get even often answers from core developers there, like the notorious vadim zeitlin++. The only thing con to Wx is the API that once grew out of MS MFC and has still its darker(unelegant) corners, but with every version you have some improvements on that as well.

QT done some nice stuff, especially warping the language but under python that don't count. They invented also a lot of extra widgets. In wx you have also combined, more complex widgets like e.g. for config dialog, but that goes not that far as in QT.

And you could of course use GTK. almost no difference under linux to Wx but a bit alien and slower under win. but also free.

like image 70
sir_lichtkind Avatar answered Jan 01 '23 19:01

sir_lichtkind


For KDE and Windows, Qt is the best option. Qt is fine for Gnome/Windows too, but in that case you might prefer WxWidgets.

Qt bindings for python are here.

Remember that for closed source development you need a Qt license, plus a PyQt license. For open source it should be free, but I'm not very familiar with the PyQt licensing.

like image 20
gnud Avatar answered Jan 01 '23 21:01

gnud