更改Qt样式表以适用于所有小部件实例

4
使用PyQt,有没有办法在不手动更改每个小部件的样式表的情况下更改每个小部件的样式表。
例如,假设我希望应用程序中的每个PushButton都具有红色文本。如何才能做到这一点,而无需为每个按钮运行button.setStyleSheet()?可能有一种方法来更改PyQt的默认按钮类吗?
感谢任何帮助 :)
1个回答

6

设置你的QApplication实例的样式表,可以全局地改变特定窗口部件的样式,例如:

GLOBAL_STYLE = """QPushButton {
    color: red; 
}"""

class MyApp(QMainWindow): 
    # your ui code here


if __name__ == '__main__':
    app = QApplication(sys.argv)
    app.setStyleSheet(GLOBAL_STYLE)
    main = MyApp()
    main.show()
    sys.exit(app.exec_())

1
这是一个好的答案。您还可以为QMainWindow设置样式表。这样做的优点是,如果您有一个复杂的窗口布局,您可以在Qt Designer中设置样式表并更好地可视化它。 - bfris

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接