AnimatedImage QML 类型
播放以一系列图像存储的动画。 更多...
导入语句 | import QtQuick |
继承 |
属性
- currentFrame : int
- frameCount : int
- paused : bool
- playing : bool
- source : url
- sourceSize : size
- speed : real
(since QtQuick 2.11)
详细说明
AnimatedImage 类型扩展了 Image 类型功能,提供了一种播放存储为图像序列的动画的方式,例如存储在 GIF 文件中的图像。
可以使用 currentFrame 和 frameCount 属性来获取当前帧和动画的总长度信息。您可以通过更改 playing 和 paused 属性的值来开始、暂停和停止动画。
可以使用 QMovie::supportedFormats() 确定支持的完整格式列表。
用法示例
以下代码示例显示了如何显示一个动态图像并获取有关其状态的信息,例如当前帧和帧数总数。结果是带有简单进度指示器的动态图像。
注意:当动态图像被缓存时,动画的每一帧都会被缓存。
如果您正在播放较长或较大的动画并希望节省内存,请将缓存设置为 false。
如果图像数据来自顺序设备(例如套接字),则AnimatedImage 只有在缓存设置为 true 时才能循环。
import QtQuick Rectangle { width: animation.width; height: animation.height + 8 AnimatedImage { id: animation; source: "animation.gif" } Rectangle { property int frames: animation.frameCount width: 4; height: 8 x: (animation.width - width) * animation.currentFrame / frames y: animation.height color: "red" } }
另请参阅BorderImage 和 Image。
属性说明
currentFrame 是当前可见的帧。通过监视此属性的更改,您可以在图像动画的同时动画化其他项。
frameCount 是动画中的帧数。对于某些动画格式,frameCount 是未知的,其值为零。
paused : bool |
此属性表示动画图像是否已暂停。
默认情况下,此属性为false。当您想暂停动画时,将其设置为true。
playing : bool |
此属性表示动画图像是否正在播放。
默认情况下,此属性为true,表示动画将立即开始播放。
注意:该属性受实际播放状态的影响AnimatedImage。如果使用非动画图像,playing 将需要手动设置为true 以对后续的图像进行动画处理。
AnimatedImage { onStatusChanged: playing = (status == AnimatedImage.Ready) }
source : url |
此属性包含指向源图像的URL。
AnimatedImage 可以处理 Qt 支持的任何图像格式,并可以从 Qt 支持的任何 URL 方案中加载。但是,它与 QQuickImageProvider 不兼容。
sourceSize : size |
speed : real |
此属性表示动画的速度。
速度以原始动画图像速度的百分比来衡量。默认速度为 1.0(原始速度)。
此属性是在 QtQuick 2.11 中引入的。
© 2024 Qt 公司有限公司。本文件中的文档贡献为其各自拥有者的版权。本文件提供的文档遵循由自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款。Qt 和相关标志是芬兰及/或全球其他国家的 Qt 公司有限公司的商标。所有其他商标均为其各自所有者的财产。