Qt Resources

Home David Projects Qt Resources
Updated: 2009-12-06

Introduction

This page contains information about various applications and resources that I have created for use with PyQt. These tend to be oriented more to other Python, Qt and PyQt developers than to non-developers, but the interactive environments might be useful as the basis of a learning environment for users.

I also maintain some KDE resources.

Available resources

Talks and Presentations

Introducing PyQt4 for GUI Application Development
A talk given at EuroPython 2006 at CERN, Geneva, Switzerland about developing graphical user interface (GUI) applications using PyQt.
Creating GUI Applications with PyQt and Qt Designer
A talk given at PyCon UK 2007 in Birmingham, England about creating applications with PyQt and Qt Designer. You can also download the related examples and source material.
Getting Started with PyQt4
A set of slides to help Python programmers get started with PyQt4 which I hope to update from time to time. You can also download the related examples and source material.
PyQt for Desktop and Embedded Devices
A presentation about using PyQt for development of desktop and embedded applications, including an introduction to Qt and PyQt. You can also download the related examples and source material.

Interactive Python Environments

Using Python in its interactive mode at the command line is a useful way to explore and learn about the features provided by modules and libraries. Unfortunately, when using GUI toolkits and frameworks such as Tk, Qt and KDE, it is usually necessary to transfer control to an event loop at some point, making it impossible to continue to execute commands at the interactive prompt.

To address this issue, I experimented with writing front ends to the Python interpreter. I wrote khpython first, to try out some ideas about visualizing Python data objects and structures.

I wrote qpython out of necessity to allow me to use PyQt interactively. Since then, ipython has been extended to work with Qt's event loop, making qpython largely redundant.

PEEQ is a version of khpython that only relies on PyQt, and which has less flexible features for visualization. It has features like tab-completion and widget capturing but, like khpython is still a work in progress.

Embedded Python Examples

Although one of the original aims of Python was to provide a scripting solution for applications, embedding Python can be a lot more effort than you might expect. I'm currently working on a set of examples to show how to embed a Python interpreter into a Qt application with the minimum of effort, and access widgets written in Python from C++.

Download

qpython-0.55.tar.gz
An interactive Python shell which allows the qt module to be imported and used interactively from a console.
peeq-0.11.tar.gz
An interactive Python shell which allows the qt module to be imported and used interactively from within a Qt-based graphical user interface.
pyqt-embedded-examples-2005-10-03.tar.gz
Embedded Python examples for PyQt (version 3).
pyqt4-embedded-examples-2008-02-13.tar.gz
Embedded Python examples for PyQt4.