Qt
De WikiDeveloppez.
Qt est un framework logiciel très complet. Il est prévu pour être simple à utiliser, et multiplateforme.
Il est développé en C++, mais peut très bien être utilisé avec Python, grâce à PyQt, ou bien en Java, avec Qt Jambi.
Il est distribué sous plusieurs licences : GPL (v3), LGPL (v2.1) et QPL.
Même si ce n'est pas sa principale orientation, Qt peut être utilisé dans l'embarqué grâce à Qt Extended.
Grâce à un outil spécifique, le moc, Qt peut gérer les signaux, les slots ou l'introspection. Cet outil est historique : il est présent dès la première version de Qt, et permettait, à l'époque, d'uniformiser le support des templates par les compilateurs
Attention ! Qt n'est pas un sigle ! Il s'écrit avec le Q majuscule et le t minuscule. Ceci se prononce cute, l'anglais pour mignon
Sommaire |
Modules
Ce framework est constitué d'une myriade de modules, disponibles dès Qt4.
- QtCore
- QtGui
- QtNetwork
- QtOpenGL
- QtSql
- QtXml
- QtDesigner
- QtAssistant
- QtDBus (à partir de Qt 4.2)
- QtScript (à partir de Qt 4.3)
- QtSvg (à partir de Qt 4.1)
- QtUiTools (à partir de Qt 4.1)
- QtTest (à partir de Qt 4.1)
- QtWebKit (à partir de Qt 4.4)
- Phonon (à partir de Qt 4.4)
- QtScriptTools (à partir de Qt 4.5)
À ceux-ci s'ajoutent deux modules pour l'ActiveX.
- QAxContainer
- QAxServer
QtCore
Il s'agit du module principal de Qt, qui contient toutes des fonctions utiles, sans le moindre rapport direct avec les GUI.
QtGui
Il s'agit du module de conception de GUI, qui se base sur le principe des widgets
QtNetwork
Il s'agit du module qui gère le réseau et le support de quelques protocoles réseau, comme HTTP ou FTP
QtSql
Il s'agit de classes d'intégration de SGBD dans Qt, des interfaces pour tous les systèmes de base de données possibles.
QtOpenGL
Il s'agit de classes de support de OpenGL pour la 3D, qui peut donc parfaitement s'intégrer dans toute application Qt sans besoin de connaissances spécifiques d'OpenGL
QtXml
Il s'agit de classes qui intègrent DOM et SAX dans Qt.
QtDesigner
Il s'agit d'un ensemble de classes qui sert à étendre les fonctionnalités de Qt Designer.
QtAssistant
Il s'agit d'un ensemble de classes qui permet d'utiliser le système d'aide de Qt Assistant à l'intérieur d'une application.
QtDBus
Il s'agit d'un ensemble de classes qui facilitent les échanges entre les processus grâce à un démon DBus (originalement prévu pour UNIX, il a été porté pour Windows par l'équipe KDE).
QtScript
Il s'agit d'un ensemble de classes qui permettent l'évaluation de scripts Qt, qui utilisent un dérivé de l'ECMAScript, la version standardisée de JavaScript
QtScriptTools
Il s'agit d'un ensemble de classes qui apporte des fonctionnalités supplémentaires aux scripts Qt.
QtSvg
Il s'agit d'un ensemble de classes qui permet l'affichage de fichiers SVG
QtUiTools
Il s'agit d'un ensemble de classes qui permet d'utiliser des formulaires de Qt Designer dans une application.
QtTest
Il s'agit d'un ensemble léger de classes qui permet d'effectuer des tests unitaires
QtWebKit
Il s'agit d'une intégration à Qt du moteur de rendu WebKit, notamment utilisé par Google Chrome.
Phonon
Il s'agit d'un ensemble de classes qui permettent d'utiliser le framework Phonon dans une application.
