FAQ Qt FAQ Qt Creator FAQ PyQt & PySide

FAQ QtConsultez toutes les FAQ

Nombre d'auteurs : 26, nombre de questions : 298, dernière mise à jour : 6 mai 2017 

 
OuvrirSommaireContenu de Qt

Qt a été découpé en plusieurs sous-bibliothèques, appelées modules, relativement indépendants les uns des autres. Depuis Qt 5, ces modules sont séparés en deux listes : d'un côté, les modules de base forment Qt Essentials, les fondations de Qt (dans le sens que ces fonctionnalités sont utiles dans bon nombre d'applications), disponibles sur toutes les plateformes avec lesquelles Qt est compatible ; de l'autre, les extensions de Qt Add-ons.

Les modules essentiels de Qt 5 sont :

  • Qt Core, les éléments essentiels du fonctionnement de toutes les bibliothèques Qt ;
  • Qt GUI, les éléments graphiques de bas niveau pour les autres bibliothèques Qt ;
  • Qt Multimedia, les fonctionnalités multimédias de bas niveau ; Qt Multimedia Widgets utilise ce contenu multimédia dans des interfaces à base de widgets) ;
  • Qt Network, des classes pour la programmation réseau ;
  • Qt Quick, une manière de programmer des interfaces graphiques déclaratives ; Qt QML, les composants de très bas niveau ; Qt Quick Controls, des composants graphiques très utiles ; Qt Quick Dialogs, des boîtes de dialogue ; Qt Quick Layouts, des mécanismes de répartition des composants. Pour Qt 4, seules les fonctionnalités de base sont disponibles (dans le module Qt Declarative) ;
  • Qt SQL, l'intégration de bases de données dans Qt ;
  • Qt Test, des outils pour réaliser des tests unitaires ;
  • Qt Widgets, les éléments graphiques de base des interfaces graphiques.

Les modules d'extension de Qt 5 sont :

  • Active Qt, extension pour écrire des composants et serveurs ActiveX (uniquement sous Windows) ; il correspond à QAxContainer et QAxServer pour Qt 4 ;
  • Qt 3D, moteur 3D en temps réel, complet et extensible (dès Qt 5.7) ;
  • Qt Bluetooth, accès à d'autres périphériques par Bluetooth (dès Qt 5.2) ;
  • Qt Canvas 3D, dessin en 3D pour Qt Quick (Qt 5.5) ;
  • Qt Charts, affichage de graphiques (dès Qt 5.7) ;
  • Qt Concurrent, primitives de bas niveau pour la concurrence ;
  • Qt Data Visualization, affichage de graphiques tridimensionnels (dès Qt 5.7) ;
  • Qt DBus, communication interprocessus avec D-Bus ;
  • Qt Graphical Effects, effets graphiques 2D pour Qt Quick (Qt 5) ;
  • Qt Image Formats, lecture des formats d'image moins courants (Qt 5) ;
  • Qt Location, composants Qt Quick pour l'affichage de cartes (dès Qt 5.6) ;
  • Qt NFC, accès à d'autres périphériques par NFC (dès Qt 5.2) ;
  • Qt OpenVG, accès à OpenVG (uniquement pour Qt 4) ;
  • Qt OpenGL, accès à OpenGL (déconseillé avec Qt 5 : les fonctionnalités ont été déplacées dans Qt GUI) ;
  • Qt Positioning, récupération des informations de position (dès Qt 5.2) ;
  • Qt Print Support, impression sur des imprimantes locales et distantes, y compris pour la génération de PDF (dès Qt 5.1) ;
  • Qt Purchasing, achat à l'intérieur des applications mobiles (dès Qt 5.7) ;
  • Qt Quick Controls 2, deuxième version des Qt Quick Controls (dès Qt 5.7) ;
  • Qt Quick 2D Renderer, moteur de rendu purement logiciel pour Qt Quick, sans dépendance envers OpenGL (dès Qt 5.7) ;
  • Qt Script et Qt ScriptTools, exécution de scripts Qt Script (déconseillé avec Qt 5 : Qt QML fournit un moteur JavaScript) ;
  • Qt Sensors, récupération des données de différents capteurs (dès Qt 5.1) ;
  • Qt Serial Port, communication par le port série (dès Qt 5.1) ;
  • Qt SVG, manipulation de fichiers SVG ;
  • Qt Virtual Keyboard, clavier virtuel pour Qt Quick et gestion de différentes méthodes d'entrée (dès Qt 5.7) ;
  • Qt WebChannel, communication entre des objets Qt (y compris Qt Quick) et des navigateurs à travers Qt WebSockets (dès Qt 5.4) ;
  • Qt WebEngine, moteur Web complet (dès Qt 5.4) ;
  • Qt WebSockets, implémentation du protocole WebSockets (dès Qt 5.3) ;
  • Qt WebView, affichage de contenus Web par le moteur par défaut de la plateforme utilisée (dès Qt 5.5) ;
  • Qt XML, contenant les classes utiles à la lecture et à l'écriture de fichiers XML avec les API DOM et SAX ;
  • Qt XML Patterns, moteur XQuery et XPath pour le XML et les modèles de données personnalisés ;
  • Qt Declarative, moteur d'exécution Qt Quick 1 ;
  • Phonon, framework multimédia (uniquement pour Qt 4) ;
  • Qt 3 Support, réutilisation presque transparente des anciennes classes de Qt 3 (uniquement pour Qt 4) ;
  • Qt Designer, extension de Qt Designer ;
  • Qt UI Tools, utilisation des fichiers .ui de Qt Designer dans des applications ;
  • Qt Help, exploitation de système d'aide de Qt dans des applications.

Cette dernière comprend également des modules d'extension pour certaines plateformes : Qt Android Extras, Qt Mac Extras, Qt Windows Extras, Qt X11 Extras.

Chaque module peut être ajouté ou retiré des projets Qt en modifiant le fichier de projet .pro (avec la variable Qt), sachant que Qt Core et Qt GUI sont ajoutés par défaut.

Mis à jour le 15 octobre 2016  par Matthieu Brucher, Thibaut Cuvelier

Lien : La liste des modules Qt

Qt intègre par défaut les modules Qt Core et Qt GUI à vos projets. Si vous souhaitez utiliser d'autres modules, éditez votre fichier PRO et modifiez la variable QT. Vous pouvez aussi retirer volontairement le module Qt GUI lié par défaut (dans le cas d'une application Qt).

 
Sélectionnez
# Ajouter le module SQL
QT += sql

# Retirer le module GUI
QT -= gui

Voici quelques modules de Qt ainsi que la valeur à ajouter à QT si vous les utilisez :

Pour savoir quel module contient la classe Qt que vous souhaitez utiliser, reportez-vous à la documentation officielle Qt et, plus précisément, à la liste des modules. Chaque classe possède un en-tête formaté de la manière suivante :

 
Sélectionnez
Nom_de_la_classe Class Reference
Module_contenant_la_classe  
Mis à jour le 22 avril 2017  par Niak74, Thibaut Cuvelier
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2006 - 2017 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.