Тип QML ParentAnimation
Анимирует изменения значений родительского элемента Подробнее...
| Заявление об импорте: | import QtQuick 2.5 |
| С момента: | 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/archives/qt-5.6/qml-qtquick-parentanimation.html