Objectifs de formation
A l'issue de cette formation, vous serez capable de :
- Identifier les fonctionnalités avancées et complexes de la librairie C++ Qt5.
Prérequis
Avoir une bonne connaissance de C++ et avoir développé des premières applications en Qt5.
Public concerné
Développeurs informatiques.
Programme
Bases de données
- Bases de données compatibles Qt
- Intérêt
- Notions de langage SQL
- QSqlDatabase
- SqlQuery
- Facilités QSqlQuery
Modèle Vue Contrôleur (MVC)
- Modèle MVC QSqlModel
- Récupération des informations du modèle
- Les Views
- QSortFilterProxyModel
- Les éléments équivalents
Plus loin avec le MVC
- Quelques points à savoir sur le Modèle Vue Contrôleur
- Construire son propre modèle
- Le paramètre "Role"
- Les "delegates"
XML et CSS
Présentation XML
- Exemple XML
- Définitions
- DOM et SAX
- Création de deux livres
DOM et SAX
- Modèle DOM : écriture
- QDomDocument : lecture
- Méthodes SAX
- Lectures simples
- Fichier XML minimal
CSS
- Feuilles de style et exemples
- QResources
- Utilisation et création d'une ressource
Graphisme
Méthode QPainter
- Présentation QPainter
- Les directives graphiques de QPainter
- Crayon (QPen)
- Pinceau (QBrush)
- Police (QFont) et Coordonnées
- Opération de transformation
Les images
- Généralités
- Les classes images
- Conversions d'un type à l'autre
- Lectures / écritures aux formats image
- Exemple de création de fichiers image
Rendu sur scène graphique
- Présentation
- QGraphicsProxyWidget
- Utilisation à partir d'un QGraphicsView
- Coordonnées sur une scène
Divers
Drag and Drop (Glisser - Déposer)
- Présentation
- Rendre un objet compatible au Glisser - Déposer
- Acceptation des Drops de la part d'une View
QTreeWidget
- La gestion des QTreeWidget / QTreeView
- Sauvegarde / Restauration
- Restauration d'un arbre
QTextCursor
- Sélectionner du texte avec QTextCursor
Processus
QProcess
Slots et signaux
- En pratique
- Raccourcis Designer
- Méthode connectSlotsByName
- Signaux avec arguments
- Cas de "disconnect"
- Déclaration de signaux
- Emission d'un signal
DBus
- QDBus
- Découverte de DBus
- DBus : mise en oeuvre
- Démarrage du service DBus dans le main.cpp
- DBus Service CPP
- Communication entre applications avec DBus
QNetwork
Mode Client
- QNetworkAccessManager
- Exemple de traitement d'un fichier reçu
- Suivre les liens
- QTcpServer
Installateur
Installateur sous Debian
- Philosophie de licence Debian
- Règles de nommage des paquets
- Ordre des numéros de version
- Astuce
- Format d'un fichier ".deb"
- Principe
Debian (suite)
- PGP : principe et installation
- Fichiers présents après dpkg-buildpackage
- Fichiers de génération du répertoire Debian
Autres installations
- Conversion d'un installateur Debian vers les autres systèmes Linux
- Fabrication d'un installateur sous Mac OS X
Divers
Compilation Qt
- Téléchargement des sources Qt
- Configurer la compilation
- Autres options de configuration
- QTextCursor
QML
- Caractéristiques
- Exemple de code
- Inclusion de JavaScript
- Créer un projet QML
- Les fichiers du projet QML
Les plug-ins
Présentation des plug-ins
- Définition des plug-ins
- Les types de plug-ins en Qt
Haut niveau
- Les plug-ins de haut niveau
- Les classes de plug-ins de base
- Etude d'un cas pratique
- Travail à fournir
- Implémentation fonction virtuelle
Bas niveau
- Les plug-ins de bas niveau
- Rendre une application compatible avec un plug-in
- Diverses considérations sur les plug-ins
- Chargement du plug-in par l'application
- Déclaration du plug-in
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour certains cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.