HistoryState QML Type
Der Typ „HistoryState“ bietet die Möglichkeit, zu einem zuvor aktiven Teilzustand zurückzukehren. Mehr...
| Import Statement: | import QtQml.StateMachine 6.12 |
| Inherits: |
Eigenschaften
- defaultState : QAbstractState
- historyType : enumeration
Ausführliche Beschreibung
Ein Verlaufszustand ist ein Pseudozustand, der den Unterzustand repräsentiert, in dem sich der übergeordnete Zustand beim letzten Verlassen des übergeordneten Zustands befand. Ein Übergang, dessen Ziel ein Verlaufszustand ist, ist faktisch ein Übergang zu einem der anderen Unterzustände des übergeordneten Zustands. „HistoryState“ ist Teil der QML-API von „Qt State Machine “.
Verwenden Sie die Eigenschaft „ defaultState “, um den Zustand festzulegen, in den gewechselt werden soll, falls der übergeordnete Zustand noch nie betreten wurde.
Anwendungsbeispiel
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
}
}
}
}
}Standardmäßig ist ein Verlaufszustand flach, was bedeutet, dass er sich nicht an verschachtelte Zustände erinnert. Dies kann über die Eigenschaft „ historyType “ konfiguriert werden.
Siehe auch „ StateMachine “ und „ State “.
Eigenschaftsdokumentation
defaultState : QAbstractState
Der Standardzustand dieses Verlaufszustands.
Der Standardzustand gibt den Zustand an, in den übergegangen wird, wenn der übergeordnete Zustand zuvor noch nie aufgerufen wurde.
historyType : enumeration
Der Typ der Historie, die dieser Historiezustand aufzeichnet.
Der Standardwert dieser Eigenschaft ist „ HistoryState.ShallowHistory“.
Diese Enumeration legt fest, welche Art von Verlauf ein „ HistoryState “ aufzeichnet.
- HistoryState.ShallowHistory Es werden nur die unmittelbaren untergeordneten Zustände des übergeordneten Zustands aufgezeichnet. In diesem Fall führt ein Übergang, dessen Ziel der Verlaufszustand ist, zu dem unmittelbaren untergeordneten Zustand, in dem sich der übergeordnete Zustand beim letzten Verlassen befand. Dies ist die Standardeinstellung.
- HistoryState.DeepHistory Verschachtelte Zustände werden aufgezeichnet. In diesem Fall führt ein Übergang, dessen Ziel der Verlaufszustand ist, zu dem am tiefsten verschachtelten Nachkommenzustand, in dem sich der übergeordnete Zustand beim letzten Verlassen befand.
© 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.