Behavior QML Type
プロパティ変更時のデフォルトのアニメーションを定義します。詳細...
Import Statement: | import QtQuick |
プロパティ
- animation : Animation
- enabled : bool
- targetProperty
(since QtQuick 2.15)
- targetProperty.name : string
(since QtQuick 2.15)
- targetProperty.object : QtObject
(since QtQuick 2.15)
- targetProperty.name : string
- targetValue : Variant
(since QtQuick 2.13)
詳細説明
Behavior は、特定のプロパティの値が変化したときに適用されるデフォルトのアニメーションを定義します。
たとえば、次のビヘイビアはRectangle のwidth
の値が変化するたびに実行されるNumberAnimation を定義します。MouseArea がクリックされると、width
が変更され、ビヘイビアのアニメーションがトリガーされます:
import QtQuick Rectangle { id: rect width: 100; height: 100 color: "red" Behavior on width { NumberAnimation { duration: 1000 } } MouseArea { anchors.fill: parent onClicked: rect.width = 50 } }
1つのプロパティに複数のビヘイビアを割り当てることはできません。1つのビヘイビアに複数のアニメーションを設定するには、ParallelAnimation またはSequentialAnimation を使用してください。
ステートチェンジがビヘイビアと同じプロパティにマッチするTransition を持つ場合、Transition のアニメーションはそのステートチェンジのビヘイビアをオーバーライドします。ビヘイビアを使用してステート変更をアニメーション化する一般的なアドバイスについては、「Qt Quick ビヘイビアとステートを使用する」を参照してください。
アニメーションとトランジション(Qt Quick) 、ビヘイビアの例、および Qt Qml.
プロパティの説明
animation : Animation |
このプロパティは、ビヘイビアがトリガーされたときに実行されるアニメーションを保持します。
enabled : bool |
このプロパティは、trackedプロパティの値が変化したときにビヘイビアがトリガーされるかどうかを保持します。
デフォルトでは、ビヘイビアは有効になっています。
プロパティ | 説明 |
---|---|
名前 | このBehaviorが制御するプロパティの名前を保持します。 |
オブジェクト | このビヘイビアが制御するプロパティのオブジェクトを保持します。 |
このプロパティを使用すると、制御対象のプロパティの名前またはオブジェクトに基づいてカスタムビヘイビアを定義できます。
次の例では、Behaviorが制御するプロパティが変化すると、そのオブジェクトがフェードアウトしたりフェードインしたりするように定義しています:
// FadeBehavior.qml import QtQuick 2.15 Behavior { id: root property Item fadeTarget: targetProperty.object SequentialAnimation { NumberAnimation { target: root.fadeTarget property: "opacity" to: 0 easing.type: Easing.InQuad } PropertyAction { } // actually change the controlled property between the 2 other animations NumberAnimation { target: root.fadeTarget property: "opacity" to: 1 easing.type: Easing.OutQuad } } }
これは、テキストが変化したときに、そのテキストをアニメーション化するために使用することができます:
import QtQuick 2.15 Text { id: root property int counter text: counter FadeBehavior on text {} Timer { running: true repeat: true interval: 1000 onTriggered: ++root.counter } }
この QML プロパティは QtQuick 2.15 で導入されました。
targetValue : Variant |
このプロパティは、ビヘイビアが制御するプロパティのターゲット値を保持します。この値は、アニメーションを開始する前にビヘイビアによって設定されます。
このプロパティは QtQuick 2.13 で導入されました。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.