What GUI toolkit looks the best?
bkelley at wi.mit.edu
Thu Dec 11 23:13:42 CET 2003
Paul Rubin wrote:
> Bruno Desthuilliers <bdesth.nospam at removeme.free.fr> writes:
>>>I can get the client to pay
>>Why ? It's free (as in free beer and free speech)
> I mean for the build tools (Visual C++ or whatever). I can't really
> use the WxWindows source code without a way to compile it. I'm getting
> discouraged to hear that WxWindows itself has numerous bugs though.
I think that these might be a bit overblown. I have released some
medium-scale academic research packages to beta-testers using wxPython
and have had no problems so far. There are about 150 installations so
far at ten different sites. I have had more problems with different
installation styles of microsoft excel than I have had with supporting
wxPython bugs. Your mileage may vary however, and I certainly don't use
all the widgets (read textctrl).
The largest hurdles are with differences between windows/linux and mac,
but I have experienced similar differences with Tkinter. Not for the
GUI itself but with dealing with the clipboard etc. You may get
different behavior on different platforms so debugging on those
platforms is a must. I've been luck so far and the documentation is
I have seen wxPython crashes during development but they all have to do
with errors in the constructors of subclassed widgets. If you raise an
exception in a constructor before calling the baseclass' __init__
function wxPython get's very unhappy and dies miserably taking
everything down. Two solutions/workarounds are
1) always call the subclassed constructor first
2) use a try...except block where call the base __init__ with default
arguments and raise an event that will close down the app nicely.
I haven't been able to figure out a way to do this automatically on
constructor errors yet. If I could I would submit it to wxPython.
If you are running on windows or redhat linux, you won't need to build
wxPython/wxWindows, you can just download and install the binaries.
If you want to build wxPython/wxWindows by yourself you will just need
More information about the Python-list