Qt

Fiche logiciel validé
  • Création ou MAJ importante : 15/10/09
  • Correction mineure : 23/07/13
Mots-clés
Pour aller plus loin
  • Fiches logiciel PLUME connexes :

Qt : bibliothèque de création d'interfaces graphiques (GUI)

Description
Fonctionnalités générales

Qt est une bibliothèque multi plateformes permettant de créer des interfaces graphiques ( GUI ) grâce à une collection très complète de composants (appelés widgets). On peut également "dessiner" ou insérer des rendus OpenGL.
La conception graphique est facilitée par un designer : Qt Designer.
Programmer dans l'environnement de Qt se fait principalement au travers des langages C++, Java, Python.
Toutes les applications Qt utilisent le générateur de projets multi-plateforme qmake associé à un fichier de description de projet portable qui permet de créer le Makefile de l'application automatiquement. Dans ce fichier de projet, on peut ajouter des sections spécifiques au système cible si on le souhaite. Il est toutefois aisé d'incorporer des composants de la librarie Qt dans une application déjà prête sans se servir des outils de Qt (qmake, qdesigner...).

Toute application (graphique ou non) écrite grâce à cette librairie fonctionnera sans aucun changement dans le code sur les principales plateformes (Windows, Linux, mac).

Autres fonctionnalités

La librairie ajoute aux fonctionnalités d'interface graphique de base des modules dédiés : Network ( communication TCP/IP client serveur ), OpenGL ( utilisation transparente de widgets OpenGL ), SQL ( intégration de base de données, driver et interface utilisateur ), SVG ( rendu de fichiers SVG ), WebKit ( affichage de document html ), XML ( lecture/écriture ), Phonon ( support multi-média audio vidéo ).
Qt permet l'internationalisation des applications de manière simple en utilisant l'outil Qt Linguist.

Qt apparaît donc, en plus d'un outil de création d'interface, comme une véritable plate-forme de développement.

Interopérabilité

Qt définit ses propres formats pour tout ce qui lui est interne ( stockage d'une interface graphique dans un fichier, de ressources, de préférences, de documentation, ... )
mais pour le reste, Qt communique avec les formats "classiques" ( jpg, gif, xml, html ).

Contexte d'utilisation dans mon laboratoire/service

Qt est utilisé pour réaliser des interfaces graphiques par les développeurs en C++ ou Python. Qt est adapté aussi bien pour ajouter une couche d'interface graphique à un programme en ligne de commande ( saisie graphique des arguments par exemple ) que pour réaliser des applications graphiques plus fines ( visualisation interactive ).

Limitations, difficultés, fonctionnalités importantes non couvertes

Le très grand nombre de possibilités peut désorienter un peu au début ( il y a souvent plusieurs manières de faire la même chose ) mais la panoplie d'exemples, de démos et de tutoriaux et la documentation très claire sont là pour orienter les utilisateurs.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

Qt est utilisé dans l'environnement de bureau de KDE et dans de nombreux exemples visibles sur la page http://trolltech.com/qt-in-use
Qt est également intégré dans la plupart des distributions linux.

Plates-formes

La portabilité ( Windows, Linux, Mac OSX, systèmes embarqués ) de la bibliothèque Qt est un atout important très mis en avant par la librairie elle-même dans sa communication.

Autres logiciels aux fonctionnalités équivalentes

Pour la partie GUI (Création d'interfaces graphique en C++) on peux citer :

  • Gtk
  • Motif (Mais ne fonctionne pas en natif sous windows)
  • WxWidgets

Fiches Plume de logiciels liés à Qt :

  • Qwt : bibliothèque de widgets Qt (courbes, images, couleurs, échelles graduées)
  • KDevelop : Environnement de Développement Intégré KDE multiplateforme
Environnement de développement
Type de structure associée au développement

Le développement de Qt est porté par la société TrollTech : http://trolltech.com/about

Eléments de pérennité

De très nombreux contributeurs : http://doc.trolltech.com/4.4/credits.html

Références d'utilisateurs institutionnels
Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

On trouve tout ça en anglais sur le site de Qt ( et bien plus encore : développements futurs, gazette ! ) et en français sur le site http://www.qtfr.org/

Documentation utilisateur

Commentaires

MAJ de la fiche

Bonjour,

Merci pour ce projet.

Je signale que la fiche qt peut etre mise à jour, en particulier sur les aspects suviants :

  • Trolltech a été rachetée par Nokia. C'est Nokia qui encadre le devenir du toolkit

  • le site www a changé : http://qt.nokia.com/

  • Licence : Qt est désormais disponible sous LGPL ou GPL ou licence commerciale. La disponibilité en LGPL est importante ; elle permet de faire du "closed source" tout en utilisant qt gratuitement

  • Qt est désormais accompagnée d'un IDE qtcreator. A mon sens, bien plus simple que nombre de concurrents, et bien mieux intégré avec qt

Bien à vous,
Nicolas