.. _other-gui-packages:
Other Graphical User Interface Packages
=======================================
Major cross-platform (Windows, Mac OS X, Unix-like) GUI toolkits are
available for Python:
.. seealso::
`PyGTK `_
is a set of bindings for the `GTK `_ widget set. It
provides an object oriented interface that is slightly higher level than
the C one. It comes with many more widgets than Tkinter provides, and has
good Python-specific reference documentation. There are also bindings to
`GNOME `_. One well known PyGTK application is
`PythonCAD `_. An online `tutorial
`_ is available.
`PyQt `_
PyQt is a :program:`sip`\ -wrapped binding to the Qt toolkit. Qt is an
extensive C++ GUI application development framework that is
available for Unix, Windows and Mac OS X. :program:`sip` is a tool
for generating bindings for C++ libraries as Python classes, and
is specifically designed for Python. The *PyQt3* bindings have a
book, `GUI Programming with Python: QT Edition
`_ by Boudewijn
Rempt. The *PyQt4* bindings also have a book, `Rapid GUI Programming
with Python and Qt `_, by Mark
Summerfield.
`wxPython `_
wxPython is a cross-platform GUI toolkit for Python that is built around
the popular `wxWidgets `_ (formerly wxWindows)
C++ toolkit. It provides a native look and feel for applications on
Windows, Mac OS X, and Unix systems by using each platform's native
widgets where ever possible, (GTK+ on Unix-like systems). In addition to
an extensive set of widgets, wxPython provides classes for online
documentation and context sensitive help, printing, HTML viewing,
low-level device context drawing, drag and drop, system clipboard access,
an XML-based resource format and more, including an ever growing library
of user-contributed modules. wxPython has a book, `wxPython in Action
`_, by Noel Rappin and
Robin Dunn.
PyGTK, PyQt, and wxPython, all have a modern look and feel and more
widgets than Tkinter. In addition, there are many other GUI toolkits for
Python, both cross-platform, and platform-specific. See the `GUI Programming
`_ page in the Python Wiki for a
much more complete list, and also for links to documents where the
different GUI toolkits are compared.