Ce livre s'adresse à toute personne souhaitant développer des interfaces graphiques en Python, de la simple boîte de dialogue à la création d'applications graphiques élaborées, avec menus, barre d'outils, redimensionnement à la taille de l'écran, accès à une base de données, etc.
Il suppose que vous débutez en Qt, mais que vous connaissez Python et maîtrisez les notions de programmation orientée objet, notamment l'héritage.
Qt est une bibliothèque multiplateforme extrêmement complète écrite en C++. PyQt sert de couche de liaison entre C++ et Python, et apporte Qt à l'environnement Python.
Ce livre s'appuie sur la version 5.6 de Qt, destinée à être maintenue sur le long terme, tout en signalant le cas échéant d'éventuelles divergences avec la version 5.7. Tous les exemples sont donc réalisés avec PyQt5.
Deux approches de développement vous sont proposées : la manière impérative par assemblage de composants (aussi appelés widgets) et la manière déclarative à l'aide du langage QML (Qt Quick). Une même application de gestion de bibliothèque sera développée à titre d'exemple avec chacune des méthodes. Pour aller plus loin, vous aborderez dans une troisième partie, l'affichage 2D interactif avec des vues graphiques (dans une application Qt Widget) et différents types d'affichages avancés avec Qt Quick (Canvas, Qt3D).
Eric6 a été choisi comme environnement de développement par défaut. Vous utiliserez également Qt Creator pour développer en QML.
Public : Développeurs Python
Sommaire :
Préliminaires
1. Présentation de PyQt
2. Environnement de développement
3. Distribuer une application PyQt
Développement d'une application avec des widgets
4. Anatomie d'une GUI
5. Créer une première application
6. Développer avec Qt Designer
7. Programmer par modèle-vue
8. Internationaliser son application
9. Accès à une base de données
Affichage 2D interactif avec les vues graphiques
10. Concepts de base
11. Première application avec une vue graphique
12. MosaiQ - une démo technologique !
Développement d'une application avec Qt Quick
13. Premiers pas avec Qt Quick
14. Présentation de JavaScript
15. Créer une fenêtre principale
16. Utiliser la méthodologie modèle-vue
17. Persistance des données avec LocalStorage
18. Créer un composant réutilisable
19. Communiquer avec Python
20. Traduire l'application
Qt Quick avancé
21. Interactivité avancée
22. États et transitions
23. Affichage 2D avec Canvas
24. Affichage 3D avec Qt 3D