通过加载 QSS 文件的方式美化 QT 界面

1 配置工程

在进行配置之前,建议先在工程的根目录下新建一个 .qss 文件,方便后面的添加

1.打开目标工程,选中此工程,鼠标右键单击 Add New

2.随后弹出如下界面,左侧选中 Qt,紧接着右侧选中 Qt Resource File,最后单击 Choose...

3.随后这个界面即是填写文件的名称及路径,一般路径默认即可,而名称根据自己的喜好进行定义,这里为 resource,最后单击 Next

4.这个界面一般不做修改,单击 Finish 即可

5.第一步,单击 Add Prefix,其中 Prefix 的值建议修改为 /,其他不做修改;第二步,单击 Add Files,随后弹出一个窗口,默认打开当前工程的根目录,选择需要的 .qss 文件(如果事先没有新建或存在,需要新建),最后,单击 打开 即可。

6.添加完成

2 编写加载程序

在这里,有两种方式加载 QSS 文件,其原理都一样,步骤如下:

  • 读取 QSS 文件
  • 加载 Style

1.编写一个类,通过静态函数进行加载

#include "mainwindow.h"
#include <QApplication>// 加载样式类
class LoadStyle
{public:// 静态加载样式函数static void setStyle(const QString &styleFilePath){QFile styleFile(styleFilePath);if(styleFile.open(QFile::ReadOnly)){qApp->setStyleSheet(styleFile.readAll());styleFile.close();}// 不成功弹出对话框else{QMessageBox::warning(NULL, "warning", "Open failed", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);}}
};int main(int argc, char *argv[])
{QApplication a(argc, argv);// 加载QSS样式LoadStyle::setStyle(":/stylesheet.qss");MainWindow w;w.show();return a.exec();
}

2.在主函数内直接加载

#include "mainwindow.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);QFile file(":/stylesheet.qss");if(file.open(QFile::ReadOnly)){QString styleSheet = QLatin1String(file.readAll());a.setStyleSheet(styleSheet);file.close();}else{QMessageBox::warning(NULL, "warning", "Open failed", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);}MainWindow w;w.show();return a.exec();
}

通过加载 QSS 文件的方式美化 QT 界面相关推荐

  1. Spring加载资源文件的方式

    UrlResource 封装了java.net.URL,它能够被用来访问任何通过URL可以获得的对象,例如:文件.HTTP对象.FTP对象等.所有的URL都有个标准的 String表示,这些标准前缀可 ...

  2. Spring加载properties文件的两种方式

    2019独角兽企业重金招聘Python工程师标准>>> 在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取pro ...

  3. HTML5动态加载资源方式,动态加载JavaScript文件的3种方式

    以下是遇到的几种动态加载JavaScript文件的方式,持续更新中... 一.使用document.write/writeln()方式 该种方式可以实现js文件的动态加载,原理就是在重写文档流,这种方 ...

  4. pyqt5从子目录加载qrc文件_【JVM系统学习之路】一篇看懂类加载

    JVM系统学习之路系列演示代码地址:https://github.com/mtcarpenter/JavaTutorial 嗨喽,小伙伴大家好,我是小春哥,今天是打卡 [JVM系统学习之路] 的第二篇 ...

  5. java加载js_[Java教程]javascript如何动态加载js文件

    [Java教程]javascript如何动态加载js文件 0 2016-01-01 00:00:52 javascript如何动态加载js文件: 有时候我们需要根据需要动态加载js文件,本章节就简单介 ...

  6. 在Vs2017上集成osgearth3.2和qt5.9,并加载shp文件。

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.QT5.9在vs上部署 1.1 在Vs中下载插件 1.2 配置QT 二.OsgEarth3.2环境配置. 三.在Q ...

  7. Qt 加载QML 文件的几种方式

    前言 之所以写这篇文章,是因为在项目中经常会碰到一个问题,qml 文件该如何加载到工程中,其实 Qt Quick APP 有两种模式,另外,还有一种场景是,在 QWidget 界面上加载 QML 页面 ...

  8. java加载properties文件的几种方式,java高级面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  9. 加载css文件的几种方法,CSS 引入方式

    HTML 中引入 CSS 的方式 有 4 种方式可以在 HTML 中引入 CSS.其中有 2 种方式是在 HTML 文件中直接添加 CSS 代码,另外两种是引入 外部 CSS 文件.下面我们就来看看这 ...

最新文章

  1. c语言中不能表示的整型常量进制,C语言中整型常量的表示方法
  2. 内存拷贝函数memcpy
  3. [AtCoder]Grand Contest 028
  4. cad加载dll_关于CAD三维建模的35个问题
  5. 随笔 | 读《写给年轻程序员的思考书》ii
  6. CentOS 5.X MySQL5.5.35 编译的bug
  7. asp.net中实现登陆的时候用SSL
  8. Qt 菜单栏、工具栏、状态栏、浮动窗口、核心部件
  9. linux mono安装,Linux下Nginx + mono安装与配置
  10. 移动端 click 300ms 延迟,如何解决
  11. 阿里巴巴2016前端开发工程师笔试一
  12. 站内搜索案例:提高商品成交率,创造卓越业绩
  13. 微信小程序实现转盘抽奖
  14. Java Web实现登录注册(超详细附代码)
  15. openjudge 二维数组右上坐下遍历(二维数组)
  16. python修改文件创建时间、修改时间、访问时间
  17. 太原科技大学2021计算机调剂,2021年太原科技大学机械工程研究生调剂信息
  18. iOS 5设备不能通过plist配置文件安装ipa程序
  19. 微信小程序全局路由拦截
  20. 人手必备神器——Infinity插件

热门文章

  1. cpu缓冲区大小怎么设置_JAVA高薪面试必备知识点Volatile底层原理探究CPU在作怪
  2. 【转载】如果让我重做一次研究生--王泛森院士
  3. TensorRT学习笔记3 - 运行sampleMNIST
  4. Magic Squares 魔板 (BFS+HASH)
  5. 【学习笔记】有向无环图上的DP
  6. 归并排序执行次数_肯定能懂的常见算法讲解(1)——排序算法
  7. Git复习(一)之简介、安装、集中式和分布式
  8. struts2.0简单页面 (不带拦截器和带拦截器案例)
  9. mui框架之a标签无法跳转的问题
  10. Linux基础练习题(三)