Тип поведения QML
Определяет анимацию по умолчанию для изменения свойства. Подробнее...
| Заявление об импорте: | import QtQuick 2.1 |
Свойства
- анимация : Анимация
- включено : bool
-
свойство цели
- свойство цели. имя : строка
- свойство цели. объект : Объект
- значение цели : Переменная
Подробное описание
Поведение определяет анимацию по умолчанию, которая применяется всякий раз, когда изменяется значение определенного свойства.
Например, следующее поведение определяет NumberAnimation, который выполняется всякий раз, когда изменяется значение свойства width объекта Rectangle. При щелчке на MouseArea значение width изменяется, что запускает анимацию поведения:
import QtQuick 2.0
Rectangle {
id: rect
width: 100; height: 100
color: "red"
Behavior on width {
NumberAnimation { duration: 1000 }
}
MouseArea {
anchors.fill: parent
onClicked: rect.width = 50
}
} Обратите внимание, что свойство не может иметь более одного назначенного поведения. Чтобы предоставить несколько анимаций в рамках поведения, используйте ParallelAnimation или SequentialAnimation.
Если у изменения состояния есть переход, который соответствует тому же свойству, что и поведение, анимация перехода переопределяет поведение для этого изменения состояния. Для получения общей информации об использовании поведения для анимации изменений состояния см. Использование поведения Qt Quick со состояниями.
См. также Анимация и переходы в Qt Quick, Пример поведения и Qt QML.
Документация по свойствам
[по умолчанию] анимация : Анимация
Это свойство содержит анимацию, которая должна выполняться при срабатывании поведения.
включено : bool
Это свойство содержит значение того, будет ли поведение срабатывать при изменении значения отслеживаемого свойства.
По умолчанию поведение включено.
[только для чтения, начиная с QtQuick 2.15] свойство цели. имя : строка
| Свойство | Описание |
|---|---|
| имя | Это свойство содержит имя свойства, которое контролируется этим поведением. |
| объект | Это свойство содержит объект свойства, которое контролируется этим поведением. |
Это свойство может использоваться для определения пользовательских поведений на основе имени или объекта контролируемого свойства.
Следующий пример определяет поведение, которое делает объект цели прозрачным и затем непрозрачным при изменении свойства, которое он контролирует:
// FadeBehavior.qml
import QtQuick 2.15
Behavior {
id: root
property Item fadeTarget: targetProperty.object
SequentialAnimation {
NumberAnimation {
target: root.fadeTarget
property: "opacity"
to: 0
easing.type: Easing.InQuad
}
PropertyAction { } // actually change the controlled property between the 2 other animations
NumberAnimation {
target: root.fadeTarget
property: "opacity"
to: 1
easing.type: Easing.OutQuad
}
}
} Это можно использовать для анимации текста при его изменении:
import QtQuick 2.15
Text {
id: root
property int counter
text: counter
FadeBehavior on text {}
Timer {
running: true
repeat: true
interval: 1000
onTriggered: ++root.counter
}
} Это свойство QML было добавлено в QtQuick 2.15.
[начиная с QtQuick 2.13] значение цели : Переменная
Это свойство содержит целевое значение свойства, которое контролируется поведением. Это значение устанавливается поведением перед началом анимации.
Это свойство было добавлено в QtQuick 2.13.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qml-qtquick-behavior.html