qrc资源文件一直有点搞不清楚,特别是前缀,到底加什么,讲的不太清楚,我的项目也因此搞的很乱.现在总结一下.
1. 比如qss资源文件,我在Resources文件夹下新增一个qss.qrc文件,这个文件会自动添加到pro文件中(?我好像自己添加进去的).
RESOURCES += res.qrc
2. 在Resources文件夹再新建几个要用到的目录qss用于放置需要用到的qss文件如test.qss.
3. 打开qss.qrc文件,添加前缀 /qss, 再添加文件 qss/test.qss.
4. 在代码中使用如下代码即可使用相应的qss文件设置相应的qss.
//set qss
QFile file(":/qss/qss/test.qss");
file.open(QFile::ReadOnly);
setStyleSheet(file.readAll());
附上别人对qrc的解释
qrc是一个xml格式的资源配置文件,与应用程序关联的应用程序由 .qrc 文件来指定,它用XML记录硬盘上的文件和对应的随意指定的资源名称,应用程序通过资源名称来访问资源。
指定的路径是 .qrc 文件所在目录的相对路径。注意,列出的资源文件必须位于 .qrc 文件所在目录或者其子目录下。
图标文件需要与qrc文件位于同一目录下或者在该目录的子目录中。另外,如果qrc文件中使用了前缀(例如<qresource prefix="/myresources">),要确保图标路径正确无误;使用Qt designer添加图标文件时就是自动使用前缀/new/prefix的,但是该路径默认不存在。
应用程序中,绝大多数地方都可以用资源路径代替原始文件系统路径。尤其是在 QIcon, QImage, or QPixmap 构造器中可以传递资源路径来代替文件名称:
cutAct =new QAction(QIcon(":/images/cut.png"), tr("Cu&t"),this);
在QtCreater中创建qrc文件的方法:
添加新文件—Qt—Qt资源文件
可以使用多种方法对其进行编辑,在资源编辑器中编辑时,首先要设置一个前缀,即在该qrc文件下的相对路径,如果与该qrc文件在相同的文件夹中,就只需要将前缀设为/即可。然后将设置的路径下自己需要的文件添加进来,在引用的时候只需要使用:符号即可(例如newAction->setIcon(QIcon(":/filenew.png"));)。
————————————————
版权声明:本文为CSDN博主「lianqiang_sun」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/s170262941/article/details/18365865