複雑なQMLコンポーネントでアニメーションを一時的に無効にする(無視する/表示しない)ことは可能ですか?その後、アニメーションをアクティブにして、いつものように動作します。複雑なQMLコンポーネントのアニメーションを一時的に無効にする(無視する/表示しない)
たとえば、 QMLの複雑なページにはオブジェクトのデータが表示されますが、小さなアニメーションがたくさんあります。データオブジェクトを変更する場合、これらのアニメーションは無視する必要があります。
Rectangle {
anchors.fill: parent
property variant cppViewModel: MyCppViewModel {
onBeforDataObjectChanged: {
}
onAfterDataObjectChanged: {
}
}
Rectangle {
id: idRect1
Behavior on x { NumberAnimation { ... }}
Behavior on y { NumberAnimation { ... }}
x: cppViewModel.dataObject.offsetX
y: cppViewModel.dataObject.offsetY
scale: cppViewModel.dataObject.scale
Rectangle {
id: idRect2
width: cppViewModel.dataObject.width
heigth: cppViewModel.dataObject.heigth
Behavior on width { NumberAnimation { ... }}
Behavior on heigth { NumberAnimation { ... }}
ColumnLayout {
Rectangle {
Layout.preferredHeight: 100 * cppViewModel.dataObject.width1
Behavior on Layout.preferredHeight { NumberAnimation { duration: 500; easing.type: Easing.OutQuad; }}
//... Any number of children with animation
}
}
}
}
PropertyAnimation { target: idRect1; property: "scale"; from: 0.9; to: 1.0; ... }
}
現在のデータオブジェクトのプロパティの値が変更された場合は、アニメーションが必要です。オブジェクト全体が別のオブジェクトに変更された場合、アニメーションをブロックする必要があります。
こんにちは、私の想像力を助けるために、広告コードをお願いしますか?しかし、私は答えが**はい** – derM
になると思う。実際のコードでは2000以上の行。 –
それはそれらの '行動'についてですか? – derM