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