How to choose the right GUI toolkit ?



Hi all,
I'm a recent, belated convert from Perl. I work in a physics lab and
have been using Python to automate a lot of measurement equipment
lately. It works fabulously for this purpose. Recently I've wanted to
start writing GUIs for some of my programs, for data visualization and
to make the programs easier to use for some of my co-workers.

So far I've experimented with two Python GUI toolkits: Tkinter and
PyGTK. I've had some issues with each:

* PyGTK - not very "pythonic", in my opinion. Have to use get_ and
set_ methods rather than properties. Have to write ugly things like
textview.insert(textview.get_end_iter(), ...) to append text to a text
buffer. No useful doc strings, which makes experimenting with new
widgets in IPython a huge pain. The toolkit feels very "heavyweight".
I don't want to write an XML file and an "action group" just to make a
piddly little menubar with 10 items.

I'm an avid Gnome fan, and love the professionalness and completeness
of GTK, but PyGTK seems frustratingly C-like compared to the
wonderfully designed high-level abstractions I've come to love in
Python!

* TkInter - Seems easy to learn, and better for quick "lightweight"
GUIs. I wrote a complete working instrument GUI in less than a day of
figuring things out. Not very Pythonic in terms of creating and
modifying widgets. No factory functions to quickly create menu items.
My biggest problem with Tkinter is that it is very unreliable under
Cygwin: programs freeze and slow intermittently and the tkMessageDialog
stock dialog boxes show no visible text.

So, is there another toolkit I should be looking at? Having something
that can run easily on Cygwin and native Windows is a priority so that
I can quickly move programs to new measurement computers. I like GTK a
lot and Tk is growing on me too.. are there any higher-level "wrapper"
toolkits for GTK and Tk?

Thanks for any advice!

Dan Lenski
University of Maryland

.



Relevant Pages

  • Re: Qt programming
    ... but the OS and environment is more develoed in ... > graphical option, that of the gimp toolkits, the gtk libraries. ... Python bindings to any of them ...
    (freebsd-questions)
  • Re: Why Lisp is not popular with average programmers
    ... 100% What n00bs like me want to see is that it has GUIs, network libraries, and all the goodies that we get with stuff like Python. ... Then I discovered Python. ...
    (comp.lang.lisp)
  • Re: Do other Python GUI toolkits require this?
    ... Python, then some level of proficiency with another language is not just ... to get started with GUI programming. ... Of the common toolkits and frameworks, ... bindings are just a "thin wrapper" over the compiled bits. ...
    (comp.lang.python)
  • Re: Events in Python?
    ... Does Python have a mechanism for events/event-driven programming? ... I'm not necessarily talking about just GUIs either, ... passing you just need to build a simple event manager class that echoes ...
    (comp.lang.python)
  • Re: GUI and CGI development
    ... Philippe> I took a look to the cliki too, ... You might want to use my Guis widget "server". ... requests (usually Python or Ruby calls) and be able to parse textual ...
    (comp.lang.lisp)