在PyQt5中获取GUI的标准调色板

问题描述 投票:1回答:1

在我的应用中,有一个按钮可以切换到深色主题。但是,如果用户想切换回初始主题。

我知道在C ++中可以像qApp->setPalette(this->style()->standardPalette());一样完成。

如何在python中完成?

pyqt5
1个回答
0
投票

qApp是应用程序实例,通常使用QtWidgets.QApplication.instance()或通过QtWidgets.qApp访问(请注意,它们是实例的[[pointers,但它们将返回不同的python对象,请参见[ C0]以获取更多信息)。

qApp versus QApplication.instance()
[请注意,这只会还原调色板,但在某些系统中,这不是一件好事(来自QtWidgets.QApplication.instance().setPalette(self.style().standardPalette())
 standardPalette():]]

请注意,在支持系统颜色的系统上,不使用样式的标准调色板。特别是Windows Vista和Mac样式不使用标准调色板,而是使用本机主题引擎。

使用这些样式,不应使用QApplication :: setPalette()设置调色板。

© www.soinside.com 2019 - 2024. All rights reserved.