Developpez.com - Rubrique Qt

Le Club des Développeurs et IT Pro

Utiliser les états parallèles avec ParallelStates dans QStateMachine

Un tutoriel de Daniel Génon

Le 2021-07-20 10:49:52, par ardoisebleue, Membre confirmé
Chers membres du Club,

Si vous avez terminé l'apprentissage des bases de la programmation de la bibliothèque QStateMachine ou si vous manipulez correctement ce framework, mais n'avez pas encore bien saisi le principe du parallélisme de ses états, je vous suggère de suivre ce cours sur les états parallèles utilisant la proprièté ParallelStates de la classe QState. Il est composé d'un cours en trois étapes supporté d'un ensemble de trois projets Qt à télécharger depuis un dépôt.

Ce cours vous permettra de bonifier vos connaissances dans cette bibliothèque complexe qu'est QStateMachine.

Rendez-vous à cette page : Cours sur les états parallèles avec le framework QStateMachine

Servez-vous de cette discussion pour me faire part de vos remarques, commentaires ou d'éventuelles informations.

Je vous souhaite une bonne lecture, de profitables séances de tests et d'aventures !

Retrouvez les meilleurs cours et tutoriels Qt
  Discussion forum
4 commentaires
  • ardoisebleue
    Membre confirmé
    Pour utiliser les projets TP des cours pour la version Qt 6.2, quelques petites modifications suffisent :

    - dans les fichiers ".pro" ajouter la ligne : QT += statemachine.

    - dans les fichiers .h et .cpp où figure la ligne : #include <QtCore/QStateMachine>,
    La modifier en supprimant "QtCore" :
    Code :
    #include <QStateMachine>
    - dans les fichiers .h où figure la ligne : #include <QtWidgets/QKeyEventTransition>,
    La modifier en supprimant "QtWidgets" :
    Code :
    #include <QKeyEventTransition>
    - dans les fichiers .cpp où figure la ligne : #include <QtCore/QSignalTransition>,
    La modifier en supprimant "QtCore" :
    Code :
    #include <QSignalTransition>
    Et la compilation devrait se réaliser sans souci.

    Il se peut que dans l'installation de la version Qt 6.2, la bibliothèque StateMachine ne soit pas attachée, utilisez le logiciel "MaintenanceTool" de Qt pour la télécharger.
  • ardoisebleue
    Membre confirmé
    Pour télécharger les projets exemples de la version QT 6.2.1 le dépôt Github est :
    https://github.com/daniel-genon/TPqstateparallelQT6.2
  • ardoisebleue
    Membre confirmé
    Maintenant que vous avez "encaissé" ce savoir, vous êtes à même de finir l'apprentissage du framework de QStateMachine en abordant la partie traitant de l'utilisation de la classe QHistoryState.
    Ce qui, vu le chemin compliqué que vous avez accompli jusque là, vous semblera être une promenade de santé (un petit dessert ?), et vous permettra d'y apprendre la procédure pour insérer dans la boucle de la machine votre propre événement pour activer une transition, ainsi que quelques astuces pour déclencher des transitions par l'intermédiaire de la souris.

    Bonne lecture