Python – Mise en oeuvre d’IHM avec Qt et PySide6

FNE

Dernière mise à jour : 17 juillet 2023

Red Hat

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.

Objectifs pédagogiques


  • Présenter les différences entre PyQt6 et PySide6
  • Mettre en œuvre une IHM complexe
  • Expliquer l'architecture MVC de Qt
  • Utiliser les outils offerts par PySide6 (QtDesigner, pyside_uic,...)

Public concerné


Développeurs Python en charge de la réalisation d'outils graphiques en Python

Prérequis


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

Modalités et moyens pédagogiques, techniques et d'encadrement


Formation avec un formateur, qui peut être suivie selon l'une des 3 modalités ci-dessous :

1 - Dans la salle de cours en présence du formateur.

2 – Dans l'une de nos salles de cours immersives, avec le formateur présent physiquement à distance. Les salles immersives sont équipées d’un système de visio-conférence HD et complétées par des outils pédagogiques qui garantissent le même niveau de qualité.

3 – Depuis votre domicile ou votre entreprise. Vous rejoignez un environnement de formation en ligne, à l'aide de votre ordinateur, tout en étant éloigné physiquement du formateur et des autres participants. Vous êtes en totale immersion avec le groupe et participez à la formation dans les mêmes conditions que le présentiel. Pour plus d'informations: Le téléprésentiel – notre solution de formation à distance.

Le nombre de stagiaires peut varier de 1 à 12 personnes (5 à 6 personnes en moyenne), ce qui facilite le suivi permanent et la proximité avec chaque stagiaire.

Chaque stagiaire dispose d’un poste de travail adapté aux besoins de la formation, d’un support de cours et/ou un manuel de référence au format numérique ou papier (pour les sessions inter-entreprises, dans le cas où le support de cours officiel est en anglais, nous offrons en complément, s’il existe, un ouvrage de référence des Editions ENI au format numérique rédigé en français).

Pour une meilleure assimilation, le formateur alterne tout au long de la journée les exposés théoriques, les démonstrations et la mise en pratique au travers d'exercices et de cas concrets réalisés seul ou en groupe.

Modalités d'évaluation des acquis


En début et en fin de formation, les stagiaires réalisent une auto-évaluation de leurs connaissances et compétences en lien avec les objectifs de la formation. L'écart entre les deux évaluations permet ainsi de mesurer leurs acquis.

En complément, pour les stagiaires qui le souhaitent, certaines formations peuvent être validées officiellement par un examen de certification. Les candidats à la certification doivent produire un travail personnel important en vue de se présenter au passage de l'examen, le seul suivi de la formation ne constitue pas un élément suffisant pour garantir un bon résultat et/ou l'obtention de la certification.

Pour certaines formations certifiantes (ex : ITIL, Prince2, DPO, …), le passage de l'examen de certification est inclus et réalisé en fin de formation. Les candidats sont alors préparés par le formateur au passage de l'examen tout au long de la formation.

Moyens de suivi d'exécution et appréciation des résultats


Feuille de présence, émargée par demi-journée par chaque stagiaire et le formateur.

Evaluation qualitative de fin de formation, qui est ensuite analysée par l'équipe pédagogique ENI.

Attestation de fin de formation, remise au stagiaire en main propre ou par courrier électronique.

Qualification du formateur


La formation est animée par un professionnel de l'informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique. Il est en veille technologique permanente et possède plusieurs années d'expérience sur les produits, technologies et méthodes enseignés. Il est présent auprès des stagiaires pendant toute la durée de la formation.