[Python-talk] UI Toolkit recommendations

Ric Werme e-mail addresses are not shown in archives
Sun Jan 27 22:30:37 EST 2008


> I'm new to this list, so forgive me if this is not the appropriate forum for
> this question.

Right place to post.

>  Java is my most proficient language,

however, expect to be abused....

> but I'm working through the Tkinter GUI examples in the O'Reilly Python book
> (2nd Ed).
...
> So, do I throw the baby out with the bath water and pick up wxPython or PyQt
> just for the table widget?  I do want to be able to run the App on Windows,
> Linux and OS X.  At first Tkinter seems like the path of least resistance
> because it's part of the standard Python distribution, but I get the
> impression that some other toolkits might be more polished.

Do not consider me an expert, but what little experience I have in this area
is useful.  As part of learning a new language, I write a program to misdraw
an analytic geometry curve called a rose.  The math is simple, the results
are attractive, and it provides a good base to learn a language on.

So, my first real Python program used Tkinter to do a very nice implementation.
Around the time I was finishing that, I heard some raves for wxPython, and
didn't get a chance to try that out until last year.  People said it was
easy to use, so I took that to mean it must be simpler than Tkinter.
Not so, it's really large, monstrous, and far more complete than Tkinter.
Being based on the C++ wxwidgets, it's also fast (once it gets going).

One of the example programs shows off the various wxPython widgets and
I was just amazed at the number and utility of the widgets, and they actually
are pretty easy to use once you get the hang of it.

However, I did write a very nice roses program that is included in the
distribution now.  It's a good sized program to look at to get a sense
of using wxPython, but there isn't much in the way of database interfacing
with table widgets and whatnot.

Read http://wermenh.com/roses/index.html - it has links to both the Tkinter
and wxPython versions.  Do take the time to try out wxPython.  I wound
up building it from scratch and was amazed at both the number of files that
compiled and how easily I got it going.  The learning curve to actually
use it is a bit steep in part because there are so many widgets to read about,
but it is worth the effort.

A lot of programs you've used appear to be built around wxwidgets, so there's
a good chance you'll wind up writing code that that the same feel as other
applications people use.

I don't expect to be using Tkinter again.

	-Ric Werme




More information about the Python-talk mailing list