Тип QML ParentAnimation
Анимирует изменения значений родителя. Подробнее...
| Заявление об импорте: | import QtQuick 2.13 |
| С тех пор: | Qt 5.0 |
| Наследуется от: |
Свойства
Подробное описание
ParentAnimation используется для анимирования изменения родителя для Item.
Например, следующий ParentChange меняет blueRect на ребёнка redRect при нажатии. Включение ParentAnimation, который определяет NumberAnimation для применения во время перехода, гарантирует плавную анимацию элемента при перемещении к новому родителю:
import QtQuick 2.0
Item {
width: 200; height: 100
Rectangle {
id: redRect
width: 100; height: 100
color: "red"
}
Rectangle {
id: blueRect
x: redRect.width
width: 50; height: 50
color: "blue"
states: State {
name: "reparented"
ParentChange { target: blueRect; parent: redRect; x: 10; y: 10 }
}
transitions: Transition {
ParentAnimation {
NumberAnimation { properties: "x,y"; duration: 1000 }
}
}
MouseArea { anchors.fill: parent; onClicked: blueRect.state = "reparented" }
}
} ParentAnimation может содержать любое количество анимаций. Эти анимации будут выполняться параллельно; для последовательного выполнения определите их в SequentialAnimation.
В некоторых случаях, например, при изменении родителя между элементами с включённым обрезанием, полезно анимировать изменение родителя через другой элемент, у которого обрезание отключено. Такой элемент можно установить с помощью свойства via.
ParentAnimation обычно используется в Transition в сочетании с ParentChange. При использовании таким образом, он анимирует все ParentChange, которые произошли во время изменения состояния. Это можно переопределить, задав конкретный целевой элемент с помощью свойства target.
См. также Анимация и переходы в Qt Quick и Примеры Qt Quick - Анимация.
Документация по свойствам
newParent : Item
Новый родитель, к которому необходимо анимировать.
Если ParentAnimation определен в Transition, это значение по умолчанию соответствует значению, определенному в конечном состоянии Transition.
target : Item
Элемент, который необходимо изменить родителя.
При использовании в переходе, если целевой элемент не указан, все ParentChange анимируются ParentAnimation.
via : Item
Элемент, через который необходимо изменить родителя. Это предоставляет способ выполнения анимации без обрезания, когда и старый, и новый родители имеют включенное обрезание.
ParentAnimation {
target: myItem
via: topLevelItem
// ...
} Примечание: Это работает только когда ParentAnimation используется в Transition в сочетании с ParentChange.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qml-qtquick-parentanimation.html