Behavior可以翻译成行为,它定义了当一个特定的属性的值方式改变时使用的默认动画。

这么看来Behavior需要绑定一个属性,而这个行为指的就是动画。

 

之前使用动画的方式都是在某一种情况下去启动动画,而使用Behavior的方式是去改变

Behavior绑定的属性。

 

示例:

例子中Behavior绑定了rect的x属性,点击MouseArea时去改变rect的x值,从而触发动画效果。

在Behavior里使用NumberAnimation,但是没有填写动画属性的目标值,根据Behavior的定义可以猜想出目标值实际就是x的新的值。

动画效果如下:

点击矩形时它的x增加50然后触发相应的动画。

 

其他说明:

一个属性只能关联到一个Behavior,不然的话,当属性值发生变化时该触发

哪个行为呢?

 

一个Behavior里也只能有一个动画,不然会报错:Cannot change the animation assigned to a Behavior。

如果非要用多个动画的话,那就使用动画组。关于动画组参考:

《「Qt-QML」动画的使用5 - ParallelAnimation 》

《「Qt-QML」动画的使用4 - SequentialAnimation》

 


---> 文章来源于我的个人博客:fearlazy
---> 编程是一件怎么也学不会的事情,但是如果能享受学习的过程也是挺好的。