[转] 解析Qt资源文件使用

解析Qt资源文件使用

转自:http://mobile.51cto.com/symbian-270121.htm

本文详细的介绍了Qt文件的使用,和大部分GUI框架设计工具一样,Qt也引入了资源文件系统。用于方便地将一些二进制文件(主要是图片文件)编译进可执行程序中,免去再发布应用的时候附带其他文件的麻烦。

本文介绍的是Qt资源文件使用,和大部分GUI框架设计工具一样,Qt也引入了资源文件系统。用于方便地将一些二进制文件(主要是图片文件)编译进可执行程序中,免去再发布应用的时候附带其他文件的麻烦。

Qt资源文件

是以.qrc为后缀名的XML文本格式。在Qt工程中使用资源文件的话,需要在.pro工程文件加入如下代码

  1. RESOURCES     = file.qrc

在工程文件中加入这样语句后,qmake系统会自动调用RCC(资源文件编译器)将file.qrc转化成qrc_file.cpp,最后使用gcc进行正常的编译。

资源文件的基本格式

来看一个简单的.qrc例子

  1. images/copy.png
  2. images/cut.png
  3. images/new.png
  4. images/open.png
  5. images/paste.png
  6. images/save.png

主要部分和之间的代码,其它部分拷贝过来就可以了,这里的”images /”是相对于你资源文件的路径,和资源文件的格式没有关系。那么你可以在你的源代码中使用QFile访问它们,在本例子中,因为是图片文件,那么你也可以直接用QImage访问它们,不过前面需要加上前缀”:/”,形式为

  1. QImage(”:/images/copy.png”);

资源文件的别名

如果你的资源文件比较多,而且放在一个比较深的目录里,可以通过别名简化

  1. images/cut.png

有了别名后,那么在.cpp文件中可以用别名进行访问

  1. QImage(”:/cut-img.png”);

资源文件的国际化

有些资源文件可能根据使用语言的不同,而使用不同的资源文件。也可以通过别名加语言选项来实现,我没看代码

  1. cut.jpg
  2. cut_fr.jpg

在使用上面资源的.cpp代码中,根据系统LANG的不同,可以通过同一语句QImage(”:/cut.jpg”)而能够访问到不同的资源文件

小结:Qt资源文件使用内容介绍完了,从资源文件的基本格式到资源文件的格式化,一一详细介绍了QT文件。希望这些内容对你有所帮助,有情况的话,也可以留言。

时间: 2024-10-14 10:56:18

[转] 解析Qt资源文件使用的相关文章

如何在Qt资源文件中包含exe等各种类型文件?

操作系统:Windows 10 X64 企业版 Qt: 5.8.0 QtCreater: 4.2.1 刚刚开始学习Qt,不断遇到困难和挑战,前几天在各个QQ群里询问如何在Qt的资源文件中包含和释放exe可执行文件,结果没有谁给我一个准确的答复,包括问写过图书的选手!!我现在非常鄙视写书的选手,是高傲还是为了面子,对于我的问题根本就不回答!!!不仅仅是一个写书选手这样,很多个!!!我相信很多作者都是乐于帮助别人,极少数人才这个德性!!!! Qt做为开发了这么多年的跨平台GUI开发解决方案,我相信这

二、添加资源文件

Qt资源系统是一个跨平台的资源机制,可以将各种类型的文件以二进制的方式存储与可执行文件内部.使用Qt Creator可以很方便的创建资源文件.在工程上点击右键选择"添加新文件",可在Qt分类中找到Qt资源文件(Qt Resource File),如下图所示,将其命名为res: 创建完成后会自动打开资源文件,在界面右侧编辑区,有个添加按钮 .如下图: 我们需要先添加前缀,点击添加选择添加前缀,默认前缀是"/new/prefix1",这个可以随便更改但是不要使用中文字符

Qt之文件操作 QFile

原地址:http://blog.csdn.net/liuhongwei123888/article/details/6084761 今天学习QT的文件操作 1.QIODevice直接继承自QObject QIODevice类是输入/输出设备的基类. QIODevice为设备提供了公共实现和抽象接口用于读写块数据.QIODevice是一个抽象类,不能被实例化. 被Q3Socket,Q3SocketDevice,QAbstractSocket,QBuffer,QFile,QLocalSocket,Q

QT笔记之VS2010 Qt中导入qrc资源文件

转载1:http://qimo601.iteye.com/blog/1404693 转载2:http://blog.sina.com.cn/s/blog_92cde3060101lobm.html 转载3:http://www.devbean.net/2012/08/qt-study-road-2-resource-files/ 刚开始自学QT,好多东西不是很明白,从网上搜出来一些资料,先记录下来,以方便以后学习.习惯了使用VS进行写项目,所以选择下载Qt5.2.Qt插件,在给窗口和控件添加背景

QT下资源使用和资源占用…(可以动态加载资源文件,这样不占内存)

原文地址:关于QT下资源使用和资源占用内存过多的问题作者:技术成就梦想 最近研究了一下如何从外部动态调用图片的问题,从而研究了图片资源的使用方法.网上最常见的帖子是这个,感觉总结的还不错. http://www.cnblogs.com/lzjsky/archive/2012/08/20/2647471.html 总的来说,就两种方式. 一种就是使用qrc资源文件,也就是在QT的工程中添加资源文件,这个方法比较简单容易操作,对于初学者来说比较容易上手,在资源比较少的时候可以使用.但是也有它的缺点,

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

 1 程序中使用资源文件 A  一个QT空项目 B  右击项目,添加新文件 添加后的效果是 C  右击main.prc,选择"添加现有项",找到要使用的资源文件.最终的效果是: D 使用qrc文件 T27Resource.pro RESOURCES += \ main.qrc SOURCES += \ main.cpp QT += gui widgets main.cpp #include <QApplication> #include <QLabel> #

【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新

上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源热更新 Android热更新开源项目Tinker源码解析系类之三:so热更新 转载请标明本文来源:http://www.cnblogs

Qt之Windows资源文件(.rc文件)

简述 在Windows下使用Qt时,通常会用到Windows的资源文件 - 为exe设置信息,其中包括:文件说明.产品名称.产品版本.版权等信息... 由于是Windows平台相关的东西,Qt助手中对于rc文件几乎没有任何介绍(在Setting the Application Icon一文中简单提到). 简述 资源信息 效果 实现 图标 参数 示例 VERSIONINFO 格式化VERSIONINFO 参数 资源信息 效果 实现 首先,我们添加一个名为version.h的头文件,包含资源信息.

Qt以及Qt Designer怎样加入资源文件

本篇经验主要是作者开发在VS上开发Qt程序的时候遇到的问题,现在分享给大家,主要就是在Qt中嵌入如图像等资源文件. 如有疑问欢迎留言. 工具/原料 Qt Designer Qt Open Source 4.8.5 方法/步骤 在Qt Designer中如果在设计UI界面的时候要加入一些图素,图标等资源的时候是不能直接添加进去的,需要在Qt开发目录下编写QRC文件. QRC文件是类似于XML格式的文件,可以手动创建. 首先穿件一个TXT文本,然后键入如下图所示的格式.在其中添加你想要的资源文件,最