Qml组件之AnimatedImage
- 该元素继承自Image,扩展了Image,Image有的属性他都有,可以替代Image,但是他还是专门用来显示动图
- 主要用来播放序列帧动画图片
- 支持gif格式和高清动图webp格式
常用属性
当前帧
- currentFrame : int
即当前是动图的第几帧,播放动图的过程中该属性的值会不停的改变
动图加载完成后,可以直接设置该值,跳到某一帧
或者在该属性的属性改变信号处理器中监听该属性的改变
AnimatedImage {source: "./11.gif"asynchronous: true//不停的打印当前帧数onCurrentFrameChanged: print("当前帧:", currentFrame)
}
帧总数
- frameCount : int [read-only]
即当前动图的总帧数
但是对于某些格式动图,总帧数可能是未知的
暂停
- paused : bool
即可以设置该属性为true来暂停播放动图
播放
- playing : bool
即可以设置该属性为true来播放动图
默认为true,立马就会播放动图
注意该属性和paused属性没有任何关联,即playing为false,停止播放时,paused并不会自动变为true
播放速度
- speed : real [since QtQuick 2.11]
默认是1.0,原始速度
如果大于1,则播放速度变快,比如为2,那么播放速度就是原来的2倍
小于1,则播放速度变慢,比如为0.5,那么播放速度就是原来的一半
可以修改该属性的值,来调整动图的播放速度
信号
- currentFrameChanged
当前帧变化信号
可检测当前帧的变化,在onCurrentFrameChanged处理器中作逻辑处理