前言
        当Qt工程打包好发给他人使用时可能会出现一些图片不显示或者一张图片都加载不出来情况,那么可能就是他人的电脑没有这些图片资源,或者源程序加载图片的方法采用的是绝对路径的写法,与他人电脑上面图片的绝对路径不一致导致加载不出来。

通过Qt添加资源文件的方法就可以解决这个问题,而且项目打包发给别人的时候不需要把图片也一起打包,可以节省很多空间。本文就是介绍Qt如何添加资源文件并使用。

欢迎添加博主xl95998,参与技术交流群。

添加资源文件
        右键工程文件夹——>点击添加新文件

依次选择Qt——>Qt Resource File——>choose

给资源起个名字,点击下一步,然后点击完成。

先选择添加前缀,然后把前缀改成自己需要的,或者直接用 /

在工程这边就可以看到添加的图片资源,至此资源添加就完成了。

后续有新的图片要添加,可以右键qrc文件,然后Open With ——>资源编辑器,就可以重新到添加文件的界面。

资源文件的使用

图片路径的写法:冒号 + 之前添加的前缀 + 图片所在的文件夹 + /xxx.png

比如:    :/image/design.png

以QLabel和QPushButton为例添加图片。代码如下:


//标签加载图片
QLabel *imgLabel = new QLabel(this);
imgLabel->resize(64,64);
imgLabel->move(200,100);
imgLabel->setPixmap(QPixmap(":/image/design.png").scaled(64,64));//图片大小改为64x64//按钮加载图片
QPushButton *imgBtn = new QPushButton(this);
imgBtn->resize(64,64);
imgBtn->move(200,300);
imgBtn->setStyleSheet("QPushButton {background-image: url(:/image/edit.png)}");

效果

之后项目打包发布的时候就不需要image文件夹了,所有的图片信息都以二进制形式存在xxx.qrc文件里了。

上述方式适用于项目配置文件(数据库配置、redis配置等等)的添加与使用。

注意:

Qt学习之资源文件(qrc)的添加以及使用相关推荐

  1. 【转】QT中添加的资源文件qrc时的路径问题小结

    @2019-06-13 [小记] QT中添加的资源文件qrc时的路径问题小结 转载于:https://www.cnblogs.com/skullboyer/p/11014943.html

  2. Qt学习之资源和图片

    资源编译器 1)创建资源文件(.qrc) <RCC><qresource prefix="/"><file>6.jpg</file> ...

  3. Qt资源文件.qrc

    目录 一 用途 二 使用效果 三 如何添加资源文件 一 用途 有时候我们想添加图片或者动画的话,就可以使用资源文件 二 使用效果 我在标签上添加了一个蝴蝶的图片,最后呈现出来的效果就是这样子的 三 如 ...

  4. qrc路径_QT中添加的资源文件qrc时的路径问题小结

    假设向一个QT的应用程序里添加了资源文件(icon.qrc),然后有在里面添加了下面的内容: image/DIW.ico text/1.cpp 看起来向下面的样子: 如果引用上述资源文件里的[1.cp ...

  5. qt qrc html,写一个QT资源文件(qrc)

    一个.qrc 文件的例子: images/copy.png images/cut.png images/new.png images/open.png images/paste.png images/ ...

  6. qrc路径_Windows下 Qt 资源文件(.qrc)文件 的 编写与应用

    最近遇到一些项目都包含了qrc文件,这个是Qt的资源文件,如果在pro文件中不包含的话,在编译的时候会提示找不到相应资源的错误. 下面说一下手动修改pro和编写qrc文件的方法. 我们直接在命令行下执 ...

  7. 2.QT中使用资源文件,程序打包

     1 程序中使用资源文件 A  一个QT空项目 B  右击项目,添加新文件 添加后的效果是 C  右击main.prc,选择"添加现有项",找到要使用的资源文件.最终的效果是: ...

  8. Qt学习day04 资源和图像 目录和定时器 鼠标和键盘操作

    一 资源和图像 1 资源编译器(rcc) 1)创建资源脚本(.qrc) vi test.qrc 0.jpg 2)将资源脚本中描述的图片转换为C++的源文件 rcc test.qrc -o qrc_te ...

  9. Qt学习笔记之文件处理

    Qt提供了通用的文件处理类QFile和处理文本的QTextStream类和处理二进制数据的QDataStream类,这些流操作极大地方便了对文件的督促存储.对文件信息和目录进行操作的类是QfileIn ...

  10. 学习使用资源文件[11] - DLL 中的资源文件

    本例将把一张 bmp 图片, 以资源文件的方式嵌入 dll, 然后再调用. 第一步: 建一个 DLL 工程, 如图: 然后保存, 我这里使用的名称都是默认的. 第二步: 建一个资源原文件, 如图: 编 ...

最新文章

  1. 小程序地图多个 circles 使用demo
  2. mySQL_connect怎么调用_Mysql ConnectC/C++使用
  3. 终于在昆明看见下雪了
  4. 【特征工程】与【表示学习】
  5. 在使用Gradle构建的Spring Boot应用程序中覆盖Spring Framework版本
  6. 652. 寻找重复的子树
  7. 达内 Java 全套教材 PDF 格式
  8. Python Pytest自动化测试 获取测试用例执行结果
  9. java知识体系结构图
  10. 消除input标签的自动填充 白色背景,及更改字体颜色
  11. Tableau的维度、度量和连续、离散的区分
  12. oracle采购业务流程,ORACLE EBS 采购的业务流程
  13. for循环实现-水仙花
  14. 【Lombok】@Log | 如何优雅的进行日志记录
  15. 植物大战僵尸2平安时代全新玩法
  16. 【Leetcode】1641. Count Sorted Vowel Strings
  17. 从几何角度全新理解线性代数
  18. Python案例之《外星人入侵》
  19. 点云配准(二)— python open3d ICP方法
  20. 项目引入editormd并且解决上传图片的问题

热门文章

  1. 神经网络在线和离线的区别,神经网络网站
  2. 学生管理系统测试用例
  3. 改进的协同过滤推荐算法
  4. python快速移动文件内容到另一个文件夹
  5. 西门子estop指令_西门子6RA80直流调速器调试步骤和参数设置
  6. 微信后台红包系统架构设计与最佳实践
  7. Cisco Packet Tracer 6.2 安装教程 | 计算机网络
  8. 强大的Git客户端:Tower for Mac
  9. jquery ajax提交form表单,jquery+ajax提交form表单方法总结
  10. JSP和Servlet传值中文乱码解决