小编Roa*_*WMC的帖子

在一个应用程序中级联多个 Qt 样式表

Qt(以及 PyQt)允许您将 QSS(Qt 样式表)文件添加到 QApplication,并为您创建的每个单独的小部件添加一个。您可以使用以下 Python/PyQt 代码设置应用程序的样式表:

# app is a QApplication and styleSheet is a str.
app.setStyleSheet(styleSheet)
Run Code Online (Sandbox Code Playgroud)

然而,该setStyleSheet()函数只允许您为 QApplication 指定一个 QSS 文件。这与 CSS 不同,CSS 允许将任意数量的样式表应用于单个网页。

我正在 PyQt 中编写一个程序,它将允许用户自定义主题。该程序有一个主要的 QSS 文件,主题应该能够包含附加的 QSS,这些附加的 QSS 会级联在其之上。然而,由于 Qt 的明显限制,这似乎不可能。

我想到的一个想法是,我可以将程序的默认样式表分配给 QApplication,并将当前主题的样式表分配给 QMainWindow。不过,这似乎是一种解决方法,而不是一个好主意。

有没有像这样添加两个 Qt 样式表的好方法?

qt pyqt qt5 qtstylesheets pyqt5

1
推荐指数
1
解决办法
2542
查看次数

标签 统计

pyqt ×1

pyqt5 ×1

qt ×1

qt5 ×1

qtstylesheets ×1