We have reached the end of the book, but by no means have we reached the end of what Python or PyQt has to offer. Python's standard library is very large, and because of our focus on PyQt we have hardly used a fraction of what is available in it. Many other libraries are also available as add-ons for Python and PyQt, so in many cases, we can program by composing existing components rather than having to build everything ourselves from scratch. A good place to begin looking for add-ons is the Python Package Index at http://pypi.python.org/pypi. And a good place to look for tricks, tips, and ideas is the Python Cookbook at http://aspn.activestate.com/ASPN/Python/Cookbook.
Our coverage of PyQt has been extensive, and all the major features have been shown and described. But PyQt has hundreds of classes, so we have not been able to cover, or even mention, all of them. For example, PyQt includes more widgets than we have used, including QCalendarWidget, QGroupBox, QProgressBar, and QToolBox. There are also lots of useful nonwidget classes, such as QCompleter (text completion), QFileSystemWatcher (to observe changes to files or directories in the filesystem), and QSystemTraylcon (to put an icon with a popup menu in the system tray). It also has support for accessibility and an undo/redo framework. In addition, PyQt has some platform-specific features, including ActiveX support on Windows, session management on the X Window System, and sheets and drawers on Mac OS X. All of these are described in the extensive online documentation. PyQt is also provided with its own set of examples—those that cover areas similar to the ones you are interested in will be well worth looking at.
This book has laid a solid foundation in GUI programming with Python and PyQt. The principles and practices it shows should make it straightforward to learn new PyQt classes from the documentation and examples supplied with PyQt, and to be able to successfully create your own classes. Programming with PyQt is both productive and enjoyable, and it leaves us free to ignore irrelevant details. This means that we can concentrate on building great applications that look good and that work well.
This page intentionally left blank
• Installing on Windows
• Installing on Linux and Unix
Was this article helpful?