pros and cons of Tkinter in comparison with other GUI toolboxes, please?

MetalOne jcb at iteris.com
Wed Nov 19 18:12:59 EST 2003


GUI's come in two flavors.
1) Sometimes called heavyweight or native.  This is a thin layer of
code that wraps the underlying OS Native API.  It provides for perfect
native look and feel.
Tk and wxWindows are of this type.  The thin layer of code can
actually become quite large due to differences between platforms.  It
is difficult to create an API that works well for all platforms. 
Linux platforms don't really have a standard native GUI API so the
model breaks down a little here.  wxWindows wraps GTK on Linux.

2) Sometimes called lightweight or emulation.  This model just wraps
basic raster operations, line, polygon, bitblit, etc.  The widgets are
created by the GUI toolkit.  GTK, FOX, FLTK are of this type.  This
makes porting a toolkit easier.  The widgets work the same on all
platforms.  The application can have the same look on all platforms or
can be skinned to look like a native application.  Usually the native
look is off a little in some places.  It is difficult to keep a native
look and feel as MS and Apple change it all the time.  The widgets can
usually be extended by the programmer using inheritance.  This is
something that can't be done as well with heavyweight widgets.

I only have experience with wxWindows so I can't comment on the
others.  I like the native look and feel of wxWindows on Windows.  I
don't like that Tk places a Tk icon in the control menu box.  Maybe
this can be changed?  wxWindows has more widgets than Tk.

However, I just bought "Learning Perl/Tk" from O'Reily.  It was on the
discount rack at Barnes and Noble for $5.00.




More information about the Python-list mailing list