C
Qt Quick Ultralite 时间轴示例
演示如何在 Qt Quick Ultralite 中使用时间轴。
概述
timeline
示例展示了如何使用时间轴类型。它显示两个正方形进行循环动画,从红色变为绿色,并从左到右移动。然后停止颜色动画并移动正方形至垂直中心。一段时间后,这些动画以反向播放,并在此动画结束时循环重启。
目标平台
项目结构
CMake 项目文件
CMakeLists.txt
文件包含一个示例的构建脚本。
QmlProject 文件
要使用 Timeline 模块,必须将 Timeline 的模块导入
... ModuleFiles { MCU.qulModules: ["Timeline"] } ...
应用程序的用户界面
timeline.qml
定义了在屏幕上显示的应用程序用户界面。
import QtQuick 2.15 import QtQuick.Timeline 1.0 Rectangle { id: root readonly property int rectSize: root.height / 5 color: "#c2c2c2" Timeline { id: timeline1 animations: [ TimelineAnimation { id: timelineAnimation pingPong: true running: true from: 0 duration: 5000 loops: Animation.Infinite to: 800 } ] startFrame: 0 enabled: true endFrame: 10000 KeyframeGroup { target: rectangle property: "x" Keyframe { id: d value: root.width - rectangle.width frame: 300 } Keyframe { value: root.width - rectangle.width frame: 548 } } KeyframeGroup { target: rectangle property: "y" Keyframe { value: 0 frame: 300 } Keyframe { value: root.height * 0.5 - rectangle.height frame: 552 } } KeyframeGroup { target: rectangle property: "color" Keyframe { value: "red" frame: 0 easing.type: Easing.InCubic } Keyframe { value: "green" frame: 552 easing.type: Easing.OutCubic } } KeyframeGroup { target: rectangle1 property: "x" Keyframe { value: root.width - rectangle1.width frame: 300 } Keyframe { value: root.width - rectangle1.width frame: 548 } } KeyframeGroup { target: rectangle1 property: "y" Keyframe { value: root.height - rectangle1.height frame: 0 } Keyframe { value: root.height - rectangle1.height frame: 300 } Keyframe { value: root.height * 0.5 frame: 548 } } KeyframeGroup { target: rectangle1 property: "color" Keyframe { value: "red" frame: 0 easing.type: Easing.OutCubic } Keyframe { value: "green" frame: 552 easing.type: Easing.OutCubic } } KeyframeGroup { target: text property: "text" Keyframe { value: "2" frame: 300 } Keyframe { value: "3" frame: 548 } } } Rectangle { id: rectangle x: 0 y: 0 width: rectSize height: rectSize color: "#ffffff" } Rectangle { id: rectangle1 x: 0 y: root.height - height width: rectSize height: rectSize color: "#ffffff" Text { id: text anchors.centerIn: parent text: "1" } } }
文件
另请参阅Timeline.
在某些 Qt 许可协议下可用。
了解更多信息。