Behavior QML Type

Defines a default animation for a property change. More...

Import Statement: import QtQuick 2.14

Properties

Detailed Description

A Behavior defines the default animation to be applied whenever a particular property value changes.

For example, the following Behavior defines a NumberAnimation to be run whenever the Rectangle's width value changes. When the MouseArea is clicked, the width is changed, triggering the behavior's animation:

import QtQuick 2.0

Rectangle {
    id: rect
    width: 100; height: 100
    color: "red"

    Behavior on width {
        NumberAnimation { duration: 1000 }
    }

    MouseArea {
        anchors.fill: parent
        onClicked: rect.width = 50
    }
}

Note that a property cannot have more than one assigned Behavior. To provide multiple animations within a Behavior, use ParallelAnimation or SequentialAnimation.

If a state change has a Transition that matches the same property as a Behavior, the Transition animation overrides the Behavior for that state change. For general advice on using Behaviors to animate state changes, see Using Qt Quick Behaviors with States.

See also Animation and Transitions in Qt Quick, Behavior example, and Qt QML.

Property Documentation

[default] animation : Animation

This property holds the animation to run when the behavior is triggered.


enabled : bool

This property holds whether the behavior will be triggered when the tracked property changes value.

By default a Behavior is enabled.


targetValue : Variant

This property holds the target value of the property being controlled by the Behavior. This value is set by the Behavior before the animation is started.

This property was introduced in QtQuick 2.13.


© 2020 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.