HistoryState QML Type
El tipo HistoryState proporciona un medio para volver a un subestado previamente activo. Más...
| Import Statement: | import QtQml.StateMachine 6.11 |
| Inherits: |
Propiedades
- defaultState : QAbstractState
- historyType : enumeration
Descripción detallada
Un estado histórico es un pseudoestado que representa el estado hijo en el que se encontraba el estado padre la última vez que se salió del estado padre. Una transición con un estado histórico como destino es, de hecho, una transición a uno de los otros estados hijos del estado padre. HistoryState forma parte de Qt State Machine QML API.
Utilice la propiedad defaultState para establecer el estado en el que se debe entrar si nunca se ha entrado en el estado padre.
Ejemplo de uso
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 } } } } }
Por defecto, un estado de historial es superficial, lo que significa que no recordará estados anidados. Esto puede configurarse a través de la propiedad historyType.
Ver también StateMachine y State.
Documentación de la propiedad
defaultState : QAbstractState
El estado por defecto de este estado histórico.
El estado predeterminado indica el estado al que se debe pasar si nunca antes se ha entrado en el estado padre.
historyType : enumeration
El tipo de historia que registra este estado de historia.
El valor por defecto de esta propiedad es HistoryState.ShallowHistory.
Este enum especifica el tipo de historial que registra un HistoryState.
- HistoryState.ShallowHistory Sólo se registran los estados hijos inmediatos del estado padre. En este caso, una transición con el estado historia como objetivo terminará en el estado hijo inmediato en el que se encontraba el estado padre la última vez que se salió de él. Este es el valor predeterminado.
- HistoryState.DeepHistory Se registran los estados anidados. En este caso, una transición con el estado histórico como objetivo terminará en el estado descendiente más profundo en el que se encontraba el estado padre la última vez que se salió de él.
© 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.