24.5 Überblick über das Qt-Framework 

Nachdem das Kapitel über grafische Benutzeroberflächen mit einem praxisorientierten Einstieg in das Qt-Framework begonnen hat, möchten wir in diesem Abschnitt einen Überblick darüber geben, wie das Framework an sich aufgebaut ist und welchen Funktionsumfang es tatsächlich hat. Sie sollten dieses Kapitel also lesen, um sich später im Qt-Framework zurechtzufinden. Wir beginnen mit einer Übersicht über die Namensräume des Qt-Frameworks. Zwei dieser Namensräume, nämlich PyQt4.QtGui und PyQt4.QtCore, haben wir bereits im letzten Abschnitt verwendet. Allgemein kapseln diese Namensräume bestimmte Teile der Klassenbibliothek Qt in thematisch zusammengehörige Gruppen.
Beachten Sie, dass Qt für die Programmiersprache C++ entwickelt wird, die bei Weitem nicht über eine so umfangreiche Standardbibliothek verfügt, wie sie bei Python vorhanden ist. Aus diesem Grund sind im Qt-Framework viele Klassen enthalten, die nichts mit grafischen Benutzeroberflächen zu tun haben, sondern verschiedene Zwecke, wie beispielsweise den Zugriff auf eine Datenbank oder das Einlesen von XML-Daten, haben. Viele dieser nicht GUI-spezifischen Klassen sind bei Python bereits durch die Standardbibliothek abgedeckt und daher im Zusammenhang mit PyQt weniger interessant. Trotzdem listet die folgende Tabelle der Vollständigkeit halber alle Namensräume auf, aus denen das Qt-Framework besteht.
| Namensraum | Beschreibung |
|
PyQt4
|
Enthält alle Namensräume des Qt-Frameworks |
|
PyQt4.QtCore
|
Enthält alle nicht-GUI-bezogenen Klassen des Qt-Frameworks, die eine Kern-Funktionalität implementieren und in vielen Situationen benötigt werden. Beispielsweise sind in diesem Namensraum Klassen für Threads, reguläre Ausdrücke oder Unicode enthalten. |
|
PyQt4.QtCore.Qt
|
Dieser Namensraum gehört zwar zu PyQt4.QtCore, ist aber so wichtig, dass er getrennt besprochen werden soll. Im Namensraum PyQt4.QtCore.Qt sind alle symbolischen Konstanten enthalten, die in Qt verwendet werden. So könnte beispielsweise die symbolische Konstante PyQt4.QtCore.Qt.Vertical verwendet werden, um einem Fortschrittsbalken eine vertikale Ausrichtung zu geben. |
|
PyQt4.QtGui
|
Enthält alle Klassen des Qt-Frameworks, die sich auf die grafische Benutzeroberfläche beziehen. |
|
PyQt4.QtNetwork
|
Enthält alle Klassen, die zur Netzwerkkommunikation benötigt werden. |
|
PyQt4.QtOpenGL
|
Enthält Klassen, die zur Darstellung von 3D-Szenen mit OpenGL verwendet werden können. |
|
PyQt4.QtScript
|
Enthält Klassen, die eine Scripting-Funktionalität für Qt-Programme mittels JavaScript bereitstellen. Dies ist im Zusammenhang mit Python eher uninteressant. |
|
PyQt4.QtSql
|
Enthält Klassen, die zum Umgang mit SQL-Datenbanken gedacht sind. |
|
PyQt4.QtTest
|
Enthält Klassen zum Durchführen eines Unit Tests in der Qt-Umgebung. Dabei kann ein virtueller Benutzer simuliert werden, sodass die grafische Benutzeroberfläche automatisch verschiedenen Tests unterzogen werden kann. |
|
PyQt4.QtXml
|
Enthält Klassen, die zum Umgang mit XML-Daten gedacht sind. |
|
PyQt4.Qt
|
Enthält alle Klassen des Qt-Frameworks. Durch Einbinden dieses Namensraums können Sie die vollständige Funktionalität von Qt nutzen, ohne sich Gedanken über das Importieren des jeweiligen Namensraums machen zu müssen. Beachten Sie aber, dass dann auch das vollständige Qt-Framework geladen und im Speicher gehalten wird. |




bestellen





