Also available in:

This is not really part of my PyQt by Example series but since it's a totally unrelated topic that would be impossible to connect to it, but is still a PyQt tutorial and shares the concept so, here it is.