【问题标题】:How to disable macOS dark mode for pyside2 / pyqt scripts?如何为 pyside2 / pyqt 脚本禁用 macOS 暗模式?
【发布时间】:2021-01-15 23:45:51
【问题描述】:

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

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

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

【问题讨论】:

    标签: python macos pyqt pyside2


    【解决方案1】:

    好吧,您可以在 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)
    

    【讨论】:

    • 那么如果操作系统在启动时处于暗模式和/或在程序运行时模式发生变化怎么办?
    • @musicamante 应用程序的样式表将始终相同(在这种情况下,黑底白字)。它不会影响更改主题,因为样式表会覆盖它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-09
    • 2021-10-15
    • 2019-12-30
    • 2019-01-11
    • 2022-10-07
    • 2022-01-12
    • 2020-11-23
    相关资源
    最近更新 更多