Qt/QSS封装管理类,更好的管理你的QSS样式

先贴源码地址: https://github.com/PatchLion/common_code_for_qt 子目录qssdata_manager

首先是需求

    由于做的产品界面样式要求美化,所以自然而然的用到了Qt的QSS,最开始使用最混乱的方式来写qss文件,就是把一个页面上所有的控件的qss写在了一个文件中,后来发现比较难于管理,并且重用性不好。基于以上的原因,对代码进行了重构。

新QSS管理类逻辑

  1. 按控件种类分类,一个样式的控件一个qss文件,达到了qss样式重用

Qt/QSS封装管理类,更好的管理你的QSS样式_第1张图片Qt/QSS封装管理类,更好的管理你的QSS样式_第2张图片

  1. 代码可以通过qss文件名称加载该样式

Qt/QSS封装管理类,更好的管理你的QSS样式_第3张图片

代码结构

QSSDataManager.h: qss数据的管理类,功能包括加载指定目录下的所有qss文件,根据名称返回qss的数据

QSSDataRefresher.h / QSSDataUser.h: qss刷新相关(重新加载, 可实现换肤功能)

HowToUse目录: 展示了怎么使用QSSDataManager


效果展示

原始


Qt/QSS封装管理类,更好的管理你的QSS样式_第4张图片


应用了qss后

Qt/QSS封装管理类,更好的管理你的QSS样式_第5张图片

Qt/QSS封装管理类,更好的管理你的QSS样式_第6张图片

Qt/QSS封装管理类,更好的管理你的QSS样式_第7张图片


你可能感兴趣的:(Qt)