Qt Creator项目中使用qss
2014-05-10 01:10
239 查看
最近学习qt ,使用的编译器是qt creator ,学习过程中遇到的题就是 如何将程序中将要用到的.qss 文件静态编译到.exe程序中,而不是在程序运行时动态载入。动态载入的最大问题在于一旦.qss 的文件名或者路径改变 ,程序中所用到的.qss 文件也将失效,这样的话程序无法发布,即使发布了,页面效果也会大打折扣。。。。
在网上找了很多资料,但试过之后都没用,下面是网上找到的一些资料:
方法一:1、建立文本文件,写入样式表内容,更改文件后缀名为qss;
2、在工程中新建资源文件*.qrc,将qss文件加入资源文件qrc中,此处注意prefix最好为"/",否则在调用qss文件时会找不到文件;
3、通过传入路径\文件名的方式创建一个QFile对象,以readonly的方式打开,然后readAll,最后qApp->setStyleSheet就可以使qss生效。
方法二:动态载入
1、建立文本文件,写入样式表内容,更改文件后缀名为qss;
2、在程序中新建QFile对象,指向新建的qss文件即可
第一种方法,按照网上的说法,如果成功的话应该是静态编译,已经将qss文件编译到exe程序中,但我按第一种方法试过之后,不知什么原因没有用;
第二种方法,属于动态编译,程序运行的时候读入,这种方法灵活性太低,一旦文件发生改变,exe的效果也会失效
我的方法:1、新建qt项目,包括ui界面的那种;
2、新建文本文档,输入样式表(qss)的文本;
3、右键单击项目的ui界面,选择 “改变样式表”;
4、在弹出的对话框中,直接粘贴qss文件的内容即可
我的方法属于静态编译。。。。。
对于项目中不包括ui界面的,目前还没有试过,故不多说。。。。
在网上找了很多资料,但试过之后都没用,下面是网上找到的一些资料:
方法一:1、建立文本文件,写入样式表内容,更改文件后缀名为qss;
2、在工程中新建资源文件*.qrc,将qss文件加入资源文件qrc中,此处注意prefix最好为"/",否则在调用qss文件时会找不到文件;
3、通过传入路径\文件名的方式创建一个QFile对象,以readonly的方式打开,然后readAll,最后qApp->setStyleSheet就可以使qss生效。
QString qss; QFile qssFile(":/qss/css.qss"); qssFile.open(QFile::ReadOnly); if(qssFile.isOpen()) { qss = QLatin1String(qssFile.readAll()); qApp->setStyleSheet(qss); qssFile.close(); }
方法二:动态载入
1、建立文本文件,写入样式表内容,更改文件后缀名为qss;
2、在程序中新建QFile对象,指向新建的qss文件即可
QString qss; QFile qssFile("D:\\Test\\qss.qss"); qssFile.open(QFile::ReadOnly); if(qssFile.isOpen()) { qss = QLatin1String(qssFile.readAll()); qApp->setStyleSheet(qss); qssFile.close(); }
第一种方法,按照网上的说法,如果成功的话应该是静态编译,已经将qss文件编译到exe程序中,但我按第一种方法试过之后,不知什么原因没有用;
第二种方法,属于动态编译,程序运行的时候读入,这种方法灵活性太低,一旦文件发生改变,exe的效果也会失效
我的方法:1、新建qt项目,包括ui界面的那种;
2、新建文本文档,输入样式表(qss)的文本;
3、右键单击项目的ui界面,选择 “改变样式表”;
4、在弹出的对话框中,直接粘贴qss文件的内容即可
我的方法属于静态编译。。。。。
对于项目中不包括ui界面的,目前还没有试过,故不多说。。。。
相关文章推荐
- Qt Creator项目中使用qss
- Linux/Ubuntu上使用Qt Creator创建非Qt项目
- Linux 下 Qt Creator 的安装,并使用它开发你的第一个 Qt 项目全过程
- Qt Creator中使用qss对界面美化没有作用(效果)的问题
- 【ARM】Ubuntu下使用Qt Creator创建交叉编译项目
- Linux 下 Qt Creator 的安装,并使用它开发你的第一个 Qt 项目全过程
- Linux 下 Qt Creator 的安装,并使用它开发你的第一个 Qt 项目全过程
- Linux下使用Qt Creator开发OpenCV项目-2.测试开发环境
- Linux 下 Qt Creator 的安装,并使用它开发你的第一个 Qt 项目全过程
- Linux下使用Qt Creator开发OpenCV项目-1.搭建开发环境
- 【ARM】Ubuntu下使用Qt Creator创建交叉编译项目
- Linux 下 Qt Creator 的安装,并使用它开发你的第一个 Qt 项目全过程
- Qt Creator中使用qss对界面美化没有作用(效果)的问题
- MyEclipse使用总结——设置MyEclipse开发项目时使用的JDK
- unity3d导出xcode项目使用afnetworking 3框架导致_kUTTagClassMIMEType 问题解决方案
- visual studio设置为使用IIS运行网站时加载项目遇到权限问题的解决方法
- 循序渐进开发WinForm项目(6)--开发使用混合式Winform模块
- 85-002-10 在web项目中使用RequestAware接口
- 使用Eclipse-Maven-git做Java开发(17)--maven项目初步
- JavaWeb项目使用SQLite数据库,数据文件相对路径