HistoryState QML Type
Le type HistoryState permet de revenir à un état précédemment actif. Plus d'informations...
| Import Statement: | import QtQml.StateMachine 6.11 |
| Inherits: |
Propriétés
- defaultState : QAbstractState
- historyType : enumeration
Description détaillée
Un état historique est un pseudo-état qui représente l'état enfant dans lequel se trouvait l'état parent la dernière fois qu'il a été quitté. Une transition ayant pour cible un état historique est en fait une transition vers l'un des autres états enfants de l'état parent. HistoryState fait partie de l'API QMLQt State Machine .
Utilisez la propriété defaultState pour définir l'état qui doit être saisi si l'état parent n'a jamais été saisi.
Exemple d'utilisation
import QtQuick import QtQml.StateMachine as DSM Rectangle { Button { anchors.fill: parent id: button text: "Press me" DSM.StateMachine { id: stateMachine initialState: parentState running: true DSM.State { id: parentState initialState: child2 onEntered: console.log("parentState entered") onExited: console.log("parentState exited") DSM.State { id: child1 onEntered: console.log("child1 entered") onExited: console.log("child1 exited") } DSM.State { id: child2 onEntered: console.log("child2 entered") onExited: console.log("child2 exited") } DSM.HistoryState { id: historyState defaultState: child1 } DSM.SignalTransition { targetState: historyState // Clicking the button will cause the state machine to enter the child state // that parentState was in the last time parentState was exited, or the history state's default // state if parentState has never been entered. signal: button.clicked } } } } }
Par défaut, un état historique est superficiel, ce qui signifie qu'il ne se souvient pas des états imbriqués. Ceci peut être configuré par le biais de la propriété historyType.
Voir également StateMachine et State.
Documentation de la propriété
defaultState : QAbstractState
L'état par défaut de cet état historique.
L'état par défaut indique l'état vers lequel il faut passer si l'état parent n'a jamais été saisi auparavant.
historyType : enumeration
Le type d'historique que cet état d'historique enregistre.
La valeur par défaut de cette propriété est HistoryState.ShallowHistory.
Cette énumération spécifie le type d'historique qu'un site HistoryState enregistre.
- HistoryStateShallowHistory Seuls les états enfants immédiats de l'état parent sont enregistrés. Dans ce cas, une transition ayant pour cible l'état historique se retrouvera dans l'état enfant immédiat dans lequel se trouvait le parent la dernière fois qu'il a été quitté. Il s'agit de la valeur par défaut.
- HistoryState.DeepHistory Les états imbriqués sont enregistrés. Dans ce cas, une transition ayant pour cible l'état historique aboutira à l'état descendant le plus profondément imbriqué dans lequel se trouvait le parent la dernière fois qu'il a été quitté.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.