C
动画精灵 QML 类型
绘制精灵动画。 更多...
导入语句 | import QtQuick |
从 | Qt Quick Ultralite 2.3 |
继承 |
属性
- currentFrame : int
- frameCount : int
- frameDuration : int
- frameHeight : int
- frameWidth : int
- loops : int
- paused : bool
- running : bool
- source : string
信号
- finished()
方法
详细描述
AnimatedSprite 通过将一个图像文件中的多个帧作为动画来渲染和控制动画。你可以以恒定速度播放,也可以手动前进和控制进度。
考虑以下精灵图
它可以分成四个帧
使用以下代码以每帧 500 毫秒的速度播放每个帧
代码 | 结果 |
---|---|
import QtQuick 2.15 AnimatedSprite { source: "loading.png" frameWidth: 64 frameHeight: 64 frameCount: 4 frameDuration: 500 } |
属性文档
frameCount : int |
表示 AnimatedSprite 中的帧数。
frameDuration : int |
动画中每帧的持续时间(毫秒)。只有正值有效。
在动画活动时更改此属性将重新启动动画。
frameHeight : int |
设置AnimatedSprite中单个帧的高度。
frameWidth : int |
设置AnimatedSprite中单个帧的宽度。
loops : int |
播放动画这么多次数后,动画将自动停止。只有正值有效。
将其设置为AnimatedSprite.Infinite
以无限播放动画。
默认为AnimatedSprite.Infinite
。
[自 Qt Quick Ultralite 2.5 起使用] paused : bool |
指示动画是否已暂停。
当动画暂停时,您可以手动将其当前帧向前推进。
默认为false
此属性是在 Qt Quick Ultralite 2.5 中引入的。
running : bool |
指示动画是否正在播放。
默认为true
source : string |
动画的图像源。
通过使用ImageFiles.MCU.resourceAnimatedSpriteFrameWidth和ImageFiles.MCU.resourceAnimatedSpriteFrameHeight指定图像源的帧大小,可以通过将图像分割成帧序列并共享它们之间的公共部分来实现资源优化。
另请参阅 管理资源.
信号文档
finished() |
当精灵动画完成时发出此信号。
如果任一running
属性设置为false
或loops
属性设置为AnimatedSprite.Infinite
,则不会发出信号。
注意: 相应的事件处理程序是 onFinished
。
方法文档
advance() |
将精灵动画推进一帧。
|
暂停精灵动画。如果paused是true
,则这样做没有意义。
此方法是在 Qt Quick Ultralite 2.5 中引入的。
restart() |
重新启动精灵动画。
|
如果paused是true
,则恢复精灵动画。否则,此操作没有作用。
此方法是在 Qt Quick Ultralite 2.5 中引入的。
start() |
启动精灵动画。如果动画已经在运行,调用此方法没有效果。
stop() |
停止精灵动画。如果动画未在运行,调用此方法没有效果。
在特定 Qt 许可证下提供。
了解更多。