2

我正在尝试使用该setStyle()方法为我的 PyQt5 应用程序设置自定义样式,但它不起作用。

我也不完全确定应该把它放在哪里。

在我的主要我尝试做:

if __name__ == '__main__':

    QApplication.setStyle("mac") #here
    app = QApplication(sys.argv)
    splash_pix = QPixmap('../resource/logo.png')
    start = time.time()
    splash = QSplashScreen(splash_pix, Qt.WindowStaysOnTopHint)
    splash.show()
    while time.time() - start < 1:
        time.sleep(0.003)
        app.processEvents()
    ex = Fy360()
    splash.finish(ex)
    sys.exit(app.exec_())

编辑:在导入from PyQt5.QtWidgets import QStyleFactory和打印时,QStyleFactory.keys()我得到了输出:

[u'Windows', u'Fusion']

为什么只有这些选项?

这里出了什么问题?

4

1 回答 1

2

有些样式依赖于操作系统,有些则不依赖于操作系统,例如 Mac 样式仅适用于 Mac OS,或者例如 fusion 兼容多个操作系统。

一些样式(例如gtk)可以配置如下:

基于讨论

  • 安装qt5-stylepluginsqt5ct
  • 在/etc/environment中设置环境变量 QT_QPA_PLATFORMTHEME=qt5ct
  • 重启系统
  • 开始qt5ct并选择gtk2
于 2017-05-14T06:37:06.600 回答