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