Introduction au QML et à QtQuick
L’approche habituelle suivie par les développeurs C++ pour apprendre Qt est de commencer par le C++ et les widgets. Cette approche est tout à fait valide, mais je pense qu’elle n’aide pas les développeurs C++ à aborder correctement le QML. Pour cette raison, ce tutoriel est organisé en suivant une autre approche : commencer par le création de l’interface graphique avec le QML et QtQuick et aller progressivement vers le bas niveau en C++.
Pour tester les codes de ce cours, vous pouvez utiliser un projet par défaut QtQuick Application
, comme vous avez fait dans
le chapitre sur Qt Creator. Vous pouvez également utiliser le site http://qmlweb.github.io pour tester les syntaxes de base du QML.
- Les base du QML et Qt Quick, pour comprendre la syntaxe de base du QML.
- Le prototypage d’interfaces graphiques, pour utiliser le QML pour concevoir vos interface graphiques.
- Le positionnement des composants permet de placer les éléments graphiques dans un interface.
- Les types et composants de base
- Creer ses propres composants composant dynamique, pour modifier en temps reel une UI (ecrire du code QML, changer les couleurs, etc)
- les styles et matériels https://doc-snapshots.qt.io/qt6-dev/qtquick-usecase-styling.html
- La conception d’interface utilisateur, introduction aux principes de l’UX design, gestion de projets, Agile
- Exercices
Certains concepts sont important et feront l’objet des chapitres suivants :
- les scripts JS https://doc-snapshots.qt.io/qt6-dev/qtquick-usecase-integratingjs.html
- Les contrôles, qui composants plus avancés pour créer une interface (bouton, checkbox, etc). https://doc-snapshots.qt.io/qt6-dev/qtquickcontrols-index.html
- Gérer les interactions avec l’utilisateur avec la souris, le clavier, l’écran tactile. https://doc-snapshots.qt.io/qt6-dev/qtquick-usecase-userinput.html
- Enrichir les UI avec les animations https://doc-snapshots.qt.io/qt6-dev/qtquick-usecase-animations.html, particules
- MVD https://doc-snapshots.qt.io/qt6-dev/qt-labs-qmlmodels-qmlmodule.html
Outils et refences
- http://qmlweb.github.io/
- https://www.qt.io/product/qt6/qml-book/
- https://qmlbook.github.io/ (Qt 5)