What is the best Python GUI API?

rm rmcorrespond at gmail.com
Fri Nov 14 13:59:48 EST 2008


On Nov 13, 7:08 pm, Stef Mientki <stef.mien... at gmail.com> wrote:
> rm wrote:
> > On Nov 13, 2:23 pm, James Harris <james.harri... at googlemail.com>
> > wrote:
>
> >> On 13 Nov, 18:59, Stef Mientki <stef.mien... at gmail.com> wrote:
>
> >>> Abah Joseph wrote:
>
> >>>>  What is the best Python GUI API? I am planning to start my first GUI
> >>>> application and I need something easy and cross platform. Qt
> >>>> applications look beautiful but I hate the license. What do you advice?
>
> >>> I agree about the Qt-license,
> >>> and I'm now a happy wxPython user.
>
> >> I too have had good results with wxwidgets when developing a GUI. The
> >> cross-platform native look and feel was a major benefit from my point
> >> of view allowing screens to "look native" under different OSs with no
> >> code changes.
>
> >> --
> >> James
>
> > Not so good if your native Linux look is KDE. ;)  I also hate the fact
> > that the GTK File Save/Open dialog box does not allow file/folder
> > renames.  On Windows, however, wxPython is great.  I guess it depends
> > on how big your application is and what is the target audience/
> > clientele.
My very first GUI application ever was a wxPython Windows
application.  You can get it from here if you like:

http://rmcorrespond.googlepages.com/DirClean_1_0b1_exe.zip

Source Code:

http://rmcorrespond.googlepages.com/CocoRename_1.0_Source.zip

(Keep in mind that I was just learning at the time, so I am not
particularly proud of the code, and I am sure most of it is deprecated
by now.)

You can say that wxPython was my first love as far as GUI development
goes.  I still think it is awesome because it is very rich and
mature.  But, coding with it is not as clean as it could be.  There is
a lot of boiler plate code needed.  And I find it a lot less
'Pythonic' than other alternatives.

If I was just going to code a small (and I mean small) GUI app for
Windows (and possibly for Gnome) I would look into PythonCard.  It
uses wxPython in the background, but it provides a much nicer API.
Unfortunately, not all the power of wxPython is available that way.
(Although you can drop down to straight wxPython if needed.)

An example of a PythonCard application I wrote (for Windows) can be
obtained here:

http://rmcorrespond.googlepages.com/CocoRename_1_0_exe.zip

Source Code:

http://rmcorrespond.googlepages.com/CocoRename_1.0_Source.zip

My needs were covered between the two options above.  However, two
things were bugging me.  First, I wanted a better (faster) development
environment.  It had to be free since all I code is Free as well.  The
ones I had tried for wxPython were not cutting it.  And second, in
Linux, I prefer KDE.  So, I wanted something that was native to KDE.
When Trolltech released QT as a GPL toolkit I figured I would give it
a try.

What I found was very eye opening.  The API was beautiful and
intuitive.  The tools and IDE (Eric, QT Designer, etc.) were more
along the lines of what I was looking for.  So, I became a QT
believer.  Unfortunately, my work circumstances have changed and I
haven't done any more GUI programming since then.  (I am a Django
coder now. :)  But, if I was going to do another GUI coding project
today, I would go with QT.  So, you can see where I am coming from.
Your needs may vary.

> Ok you only guess, but ...
> .. you're suggesting
> - that if the application is too big, wxPython is not a good choice.
> What's big ?
> - if the target is ... ??? ... it's not a good choice, for what audience
> is wxPython not suited ?
> thanks,
> Stef Mientki
>
> > --
> >http://mail.python.org/mailman/listinfo/python-list
>
>




More information about the Python-list mailing list