Bonjour,
J'ai un soucis avec les transitions d'une QScxmlStateMachine.
J'ai deux petites machines d'états dans mon soft. Je me suis aperçu que le changement d'état de ma seconde machine d'états sm via l'activation d'une transition (sm.submitEvent("la_transition")) n'est pas immédiat.
D'après ce que j'ai constaté, les évènements d'une QScxmlStateMachine sont traités en derniers, juste avant de rendre la main à l'utilisateur. Or j'ai besoin de connaître l'état actif de sm avant...
Je traite l'affaire en appelant juste après submitEvent() :
Mais la doc Qt déconseille cette méthode.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 QApplication::processEvents(QEventLoop::ExcludeUserInputEvents);
Comment faire alors ???
J'ai pensé à récupérer un handler vers la QEventLoop de la QApplication, mais rien ne semble prévu pour ça.
Partager