当前位置: 首页 > news >正文

如何利用NAS做网站趣头条自媒体平台

如何利用NAS做网站,趣头条自媒体平台,品牌好的佛山网站建设价格,网站建设制作优化目录 引言相关阅读基础知识:AnimatedImage核心属性与方法工程结构与示例展示工程结构示例1:可控制播放/暂停的AnimatedImage示例2:带进度条的AnimatedImage主界面整合(SwipeView滑动展示) 总结下载链接 引言 在UI开发…

目录

    • 引言
    • 相关阅读
    • 基础知识:AnimatedImage核心属性与方法
    • 工程结构与示例展示
      • 工程结构
      • 示例1:可控制播放/暂停的AnimatedImage
      • 示例2:带进度条的AnimatedImage
      • 主界面整合(SwipeView滑动展示)
    • 总结
    • 下载链接

引言

在UI开发中,无论是加载提示、状态反馈还是趣味动画,都需要一个轻量且高效的组件来实现。Qt6的QML模块中提供了AnimatedImage组件,专门用于播放GIF等格式的动画资源。本文将结合一个实际工程示例,详细讲解AnimatedImage的基础用法及常见交互实现。


相关阅读

本文示例基于Qt官方文档开发,建议参考:
Qt6 AnimatedImage组件官方文档


基础知识:AnimatedImage核心属性与方法

AnimatedImage是Qt Quick模块中的动画图像组件,继承自Image,主要用于播放动态图像(如GIF)。其核心属性和方法如下:

  • source:动画资源路径(支持qrc:/前缀访问Qt资源文件)
  • playing:布尔值,控制是否自动播放(true为播放,false为暂停)
  • currentFrame:当前播放的帧索引(从0开始)
  • frameCount:动画总帧数(需动画加载完成后获取有效值)

工程结构与示例展示

工程结构

当前工程目录结构简洁,核心文件如下(3层深度):

qml_animatedimage/
├─ .gitignore          # Git忽略规则
├─ CMakeLists.txt       # 工程构建脚本
├─ main.cpp             # C++入口文件
├─ Main.qml             # 主界面(包含SwipeView滑动容器)
├─ AnimatedImageExample1.qml  # 示例1:可控制播放/暂停的动画
├─ AnimatedImageExample2.qml  # 示例2:带进度条和帧提示的动画
├─ images.qrc           # Qt资源文件(注册GIF资源)
└─ images/              # GIF资源目录├─ image1.gif        # 示例1使用的动画└─ image2.gif        # 示例2使用的动画

示例1:可控制播放/暂停的AnimatedImage

文件:AnimatedImageExample1.qml
功能:点击动画区域切换播放/暂停状态,保持宽高比居中显示。

import QtQuickItem {width: 200height: 200AnimatedImage {id: animsource: "qrc:/images/image2.gif"  // 指向images目录下的资源(根据images.qrc)playing: false  // 默认不自动播放fillMode: Image.PreserveAspectFit  // 保持宽高比anchors.centerIn: parent  // 居中显示MouseArea {anchors.fill: parentonClicked: {anim.playing = !anim.playing}}}
}

说明:
通过 AnimatedImage 加载GIF资源,默认暂停播放;通过 MouseArea 覆盖动画区域,点击时修改当前播放状态(取反),实现播放/暂停状态切换。

运行效果:

示例1页面:点击动画区域可切换播放/暂停状态,动画保持居中且不拉伸。
请添加图片描述


示例2:带进度条的AnimatedImage

文件:AnimatedImageExample2.qml
功能:显示动画播放进度条,并实时提示当前帧/总帧数。

import QtQuickItem {width: 200height: 200Rectangle {id: containerwidth: animation.width; height: animation.height + 20  // 增加高度容纳文本anchors.centerIn: parent  // 居中显示// 将frames属性提升到共同父组件property int frames: animation.frameCountAnimatedImage {id: animationsource: "qrc:/images/image1.gif"  // 指向images目录下的资源}// 进度指示条Rectangle {width: 4; height: 8x: (animation.width - width) * animation.currentFrame / container.frames  // 改为访问父组件的framesy: animation.heightcolor: "red"}// 当前帧文本提示(已修复frames引用)Text {text: "当前帧: " + animation.currentFrame + "/" + container.frames  // 改为访问父组件的framesy: animation.height + 10  // 位于进度条下方anchors.horizontalCenter: parent.horizontalCenterfont.pixelSize: 12}}
}

说明:
通过 AnimatedImage 加载动画资源,利用 frameCount 获取总帧数(存储到 container.frames 属性);进度条通过 currentFrame (当前帧索引)和 frames (总帧数)计算位置,实现“进度跟随播放”效果;文本组件实时拼接当前帧和总帧数,显示播放进度详情

运行效果:

示例2页面:动画播放时,红色进度条随帧移动,下方文本实时显示“当前帧/总帧数”(如“当前帧: 1/30”)。
请添加图片描述


主界面整合(SwipeView滑动展示)

文件:Main.qml
通过SwipeView容器将两个示例整合,支持左右滑动切换页面。

import QtQuick
import QtQuick.Window
import QtQuick.ControlsWindow {width: 640height: 480visible: truetitle: qsTr("AnimatedImage示例")SwipeView {id: swipeViewanchors.fill: parent  // 填充整个窗口// 添加两个示例页面AnimatedImageExample1 {}AnimatedImageExample2 {}}
}

运行效果:

请添加图片描述


总结

本文通过一个实际工程示例,展示了Qt6 QML中AnimatedImage组件的基础用法和常见交互实现。AnimatedImage凭借简洁的属性和对GIF等格式的原生支持,能快速实现动画播放需求。

下载链接

Gitcode -> QML AnimatedImage示例

在这里插入图片描述

http://www.dtcms.com/a/563712.html

相关文章:

  • 如何做网站数据分析聊城网站建设哪家专业
  • 自建淘宝客网站模板wordpress加载谷歌地图
  • 做生产计划类的网站做网站的图片用什么格式
  • 商贸公司寮步网站建设怎么把网站做成自适应
  • 专业柳州网站建设公司广州建设大厦地址
  • 白人与黑人做爰网站成都住建局官网保租房
  • 优化一个网站可以做多少关键词前端开发人员怎么做网站
  • 中国建设工程人才库官方网站友情链接名词解释
  • 宣传册设计及网站建设seo怎么优化一个网站
  • 如何做适合网站大小的图片seo站外推广
  • 网站开发的业内人士wordpress的数据库
  • 平台网站开发是什么意思深圳网站建设价格是多少钱
  • 怎么在网站文本框内做超连接本溪市住房和城乡建设局网站
  • 吴江盛泽建设局网站24小时妇科免费问医生
  • seo百度站长工具wordpress付款插件
  • 网站建设的目标及服务对象成都最新通告今天
  • wordpress网站管理系统郑州一建官网
  • 网站建设人工费一年多少钱wordpress lens 模板币
  • jquery 炫酷网站游戏试玩网站怎么做
  • 做渔船的网站网站开发合同下载
  • 全新网站如何做百度竞价女性门户网站织梦模板
  • 北京开发办网站上海网站开发外包公司
  • 西安建设教育网站企业网站建设指导规范
  • 宁波网站建站推广做个简单网站大概多少钱
  • 兼职网站做任务中国有什么网站做跨境零售
  • 青山湖南昌网站建设工具磨床东莞网站建设
  • 网站设计制作的服务和质量全屏网站 内页怎么做
  • 网站内容作弊的形式产品怎么做市场推广
  • 想注册一个设计网站吗毕节地seo
  • 深圳自适应网站公司五年级上册优化设计答案