首页 > 解决方案 > 如何为 pyside2 / pyqt 脚本禁用 macOS 暗模式?

问题描述

我有几个用 PySide2 编写的带有小型 GUI 的脚本。其中很多都有带有单独小部件样式表的部分,并且在 macOS 暗模式下不可读。

因此,我不想更新 GUI,而是想完全禁用某些脚本的暗模式。

我知道该Info.plist设置,但这不适用于单个 python 脚本,仅适用于冻结和捆绑的应用程序。此外,我发现默认情况下无法使用调色板。有什么提示吗?

标签: pythonmacospyqtpyside2

解决方案


好吧,您可以在 QMainWindow 样式表中定义自己的样式表:

stylesheet = """
    * {
        color: #000000;
        background-color: #FFFFFF; 
    }
    QLabel {
        color: #000000;
        background-color: #FFFFFF; 
    }
    QPushButton {
        color: #000000;
        background-color: #FFFFFF; 
    }

  etc.

"""
window.setStyleSheet(stylesheet)

如果您希望这仅在 macOS 上发生:

from sys import platform as _platform
if(_platform=='darwin'):
    window.setStyleSheet(stylesheet)

推荐阅读