SuperAPI AI 工具集

qt-styling

通用与其它

查看项目

更新于 10-16 06:22

技能介绍

用途:为 Qt 应用提供样式表(QSS)与主题化方案,涵盖控件外观定制、深色/浅色模式、调色板以及跨平台一致的样式。

主要能力:支持应用级与单控件级样式表设置;QSS 选择器语法包括类型、类、对象名、子级、后代、伪状态与子控件选择器;深色/浅色模式检测与切换,可通过 QPalette 编程式设置深色主题,也可基于 QSS 文件切换主题;支持动态属性样式,通过 setProperty 配合 unpolish/polish 切换样式;可强制 Fusion 风格以获得跨平台一致外观。

使用方式:应用级样式通过 app.setStyleSheet 设置,单控件通过 setStyleSheet 覆盖;主题切换可读取 resources 目录下的 light.qss/dark.qss 文件;动态属性修改后需调用 style().unpolish 与 polish 强制重新求值;跨平台一致外观可调用 QStyleFactory.create("Fusion") 并 app.setStyle。

适用场景:需要统一 Qt 应用视觉风格、实现深色/浅色主题切换、按控件状态或自定义属性切换样式的桌面应用开发。

限制:QSS 无变量与继承,需借助 Python 模板化样式字符串;部分复杂控件(如 QCalendarWidget、QMdiArea)QSS 支持有限;QGroupBox 的 border-radius 需同时设置 background-color 才生效;margin、padding 与 border 的盒模型与 CSS 存在差异;原生样式(Windows11、macOS)会部分忽略 QSS 规则。