Apprenez à développer des interfaces graphiques complexes avec notre formation Python et PySide6.
Maîtrisez les concepts clés de PySide6 et Qt, y compris la mise en œuvre d’interfaces HTML et CSS, la gestion des événements, et l’utilisation de widgets.
Explorez la création de barres de contrôle, la gestion des layouts Qt, le traitement des événements, et l’utilisation de divers widgets supplémentaires.
Découvrez l’architecture MVC de Qt et comment mettre en œuvre des tables de données, des arborescences de données, et des listes de données.
Profitez de leçons avancées sur l’architecture MDI, la gestion des styles, et l’internationalisation.
Apprenez à utiliser Qt Designer et à intégrer MatPlotLib dans votre interface.
Programme détaillé
Concepts généraux
- Introduction
- Les différents bindings Python/Qt : PySide6 et PyQt6
- Installation des librairies Qt et PySide6
- Utilisation de l'IDE Eclipse/PyDev ou PyCharm
- Utilisation des documentations en ligne
- Principes généraux de PySide6
- Notion d'application Qt
- Intégration des technologies HTML et CSS dans Qt
- Quelques composants : QLabel, QPushButton, QLineBox...
- Les layouts Qt
- La gestion des événements
- Les classes non graphiques de Qt
Gestion des barres de contrôle
- Définition d'actions Qt
- Mise en œuvre d'une barre de menus
- Mise en œuvre de barres d'outils
- Mise en œuvre d'une barre de statut
- Gestion des menus contextuels
Gestion des layouts Qt
- Introduction au concept de layout
- Utilisation des classes QHBoxLayout et QVBoxLayout
- Utilisation de la classe QGridLayout
- Utilisation de la classe QFormLayout
Traitement des événements
- Les événements Qt
- Présentation du paradigme Slots/Signaux
- Les décorateurs PySide6 pour la gestion des slots (@Slot)
- Définir vos propres signaux
Quelques Widgets complémentaires
- Les widgets simples
- La classe QCheckBox
- La classe QRadioButton
- La classe QSlider
- La classe QProgressBar
- La classe QSpinner
- La classe QComboBox
- La classe QLCDNumber
- Les conteneurs
- La classe QGroupBox
- La classe QDockWidget
- La classe QSplitter
- La classe QTabWidget
- La classe QMdiArea
- Les boites de dialogues
- La classe QMessageBox
- La classe QInputBox
- La classe QFileDialog
- La classe QColorDialog
- Les boîtes de dialogue personnalisées et la classe QDialog
Architecture MVC en Qt
- Introduction à l'architecture MVC
- Concepts principaux
- Mise en œuvre via Qt
- Mise en œuvre de tables de données
- Mise en œuvre d'arborescences de données
- Mise en œuvre de listes de données
Quelques aspects avancés
- Mise en œuvre d'une architecture MDI (Multiple Document Interface)
- Le conteneur QMdiArea
- Les stratégies de positionnement d'un QMdiArea
- Gestion des sous fenêtres (QMdiSubWindow)
- Fonctions de tracé avancées
- La gestion des styles via Qt
- Changer le thème utilisé par votre application Qt
- Utilisation d'une feuille de styles CSS
- Les classes non graphiques de Qt
- La gestion des Threads
- La gestion du système de fichiers
- Internationalisation d'une application PySide6
Utilisation du Qt Designer
- Présentation du designer
- Prise en main de l'outil
- Notion de promotion de Widget
- Génération du code Python
- Le compilateur pyside-uic
- Intégration des codes générés dans votre application
Intégration Qt/MatPlotLib
- Qu'est-ce que MatPlotLib ?
- Intégration de MatPlotLib dans votre interface
- Gestion des événements MatPlotLib