根据Animation documentation在“默认动画为行为”一节中,他们说
有几种方法可以将行为动画分配给属性。
其中之一就是我们应该能够在没有Behaviour
的情况下使用on property
,但是我没有成功地使用它。
这是我的示例代码。我有一个彩色圆圈,改变颜色应该触发ColorAnimation,但事实并非如此
import QtQuick 2.5
import QtQuick.Window 2.2
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Rectangle {
width: 75; height: 75; radius: width
id: ball
color: "salmon"
Behavior {
ColorAnimation { target: ball; duration: 100 }
}
}
Component.onCompleted: timer.start()
Timer{
id: timer
onTriggered: {ball.color = "blue" }
interval: 1000
}
}
如果我添加on color
,它的工作原理。我也尝试将property: "color"
添加到ColorAnimation
定义中,但没有任何反应。
在浏览文档之后,我认为还没有其他方法可以为QML中的Behaviors指定属性,即使动画文档建议如此。
行为是属性修饰符类型更具体的属性值写入拦截器。目前行为是唯一的,请参阅: