IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Futur Membre du Club
    Homme Profil pro
    developpemnt QT, MAO DAO
    Inscrit en
    juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : developpemnt QT, MAO DAO
    Secteur : Arts - Culture

    Informations forums :
    Inscription : juin 2018
    Messages : 9
    Points : 8
    Points
    8
    Par défaut Tutoriel pour apprendre les bases de la programmation de la bibliothèque QStateMachine
    Chers membres du Club,

    Je vous propose un tutoriel pour comprendre et utiliser la bibliothèque QStateMachine.

    Il est composé d'un cours en dix étapes et d'un ensemble de dix projets à télécharger depuis un dépôt.

    À la fin de ces cours vous aurez acquis les bases indispensables pour manier efficacement cette bibliothèque.

    Rendez-vous à cette page : Apprendre les bases de la programmation de la bibliothèque 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 armez-vous de courage !

  2. #2
    Futur Membre du Club
    Homme Profil pro
    developpemnt QT, MAO DAO
    Inscrit en
    juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : developpemnt QT, MAO DAO
    Secteur : Arts - Culture

    Informations forums :
    Inscription : juin 2018
    Messages : 9
    Points : 8
    Points
    8
    Par défaut un peu de détente avec ensureVisible
    Un peu de récréation :
    Ce qui suit n'a rien à voir avec QStateMachine, mais il permet d'utiliser la méthode ensureVisible de la classe QGraphicsView qui permet un effet visuel dans le déplacement du joueur, et s'intègre facilement dans la structure du programme déjà réalisé.
    Pour réaliser cela, j'ai ajouté l'étape 11 au git QStateMachine, téléchargeable dans le document cité plus haut.
    Actuellement, dans une scène de dimensions plus importantes que la zone graphique, le joueur disparaîtrait dès qu'il aurait atteint la limite de la zone, puisque les frontières de son déplacement sont définies par la dimension de la scène, donc de l'image.
    L'effet assumé par ensureVisible est que la scène reste immobile, tant que le joueur se déplace dans un espace rectangulaire paramétré à l'intérieur de la zone graphique. Dès que ce joueur atteint une des limites de cet espace, il semble se fixer et déclenche le défilement de la scène, jusqu'à ce que un bord de cette scène arrive à la limite de la zone graphique et, alors, le joueur reprend son déplacement jusque la fin de la zone, où il se fixe.
    Comme vous pourrez le constater dans le git téléchargé, j'ai ajouté une image plus grande : motif/fond2.png et modifié quelques fichiers. Ces modifications sont commentées dans les fichiers
    Le plus stupéfiant c'est le peu de modifications nécessaires pour obtenir cet effet :
    Dans la classe Joueur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect(animationdelobjet,SIGNAL(valueChanged(QVariant)), this, SLOT(LeJoueurBouge(QVariant)));
    et la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void Joueur::LeJoueurBouge(const QVariant &){    pvue->ensureVisible(this,200,200);}
    Bonne détente
    Daniel Génon

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/09/2018, 18h43
  2. Réponses: 2
    Dernier message: 05/09/2017, 14h44
  3. Réponses: 5
    Dernier message: 15/03/2017, 23h26
  4. Réponses: 3
    Dernier message: 06/10/2016, 20h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo