我正在使用 PyQt5 在 Python 中开发一个应用程序。这是有问题的代码:
class Dialog(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.layout = QtWidgets.QGridLayout()
self.main = QtWidgets.QWidget()
self.main.setLayout(self.layout)
self.setStyleSheet(QMainWindowStyle)
self.setCentralWidget(self.main)
self.show()
class AppearanceTab(QtWidgets.QWidget):
def __init__(self):
super().__init__()
class SettingsDialog(Dialog):
def __init__(self):
super().__init__()
self.tabs = QtWidgets.QTabWidget(self)
self.tabs.setStyleSheet(QTabWidgetStyle)
self.layout.addWidget(self.tabs)
self.tab_appearance = AppearanceTab()
self.tab_appearance.setStyleSheet(QWidgetStyle)
self.tab_appearance_layout = QtWidgets.QGridLayout()
self.tab_appearance.setLayout(self.tab_appearance_layout)
self.tabs.addTab(self.tab_appearance, "Appearance")
self.tab_server = QtWidgets.QWidget()
self.tab_server.setStyleSheet(QWidgetStyle)
self.tab_server_layout = QtWidgets.QGridLayout()
self.tab_server.setLayout(self.tab_server_layout)
self.tabs.addTab(self.tab_server, "Server")
为什么当self.tab_appearance是一个AppearanceTab实例(这应该是一个拷贝QWidget),它有不同的风格self.tab_server(即背景颜色变化),当self.tab_server是一个实例QWidget?
样式表只定义background-color: #333333和color: #dddddd。
提前致谢。
编辑:
我相信样式表没有正确应用于AppearanceTab,但是我不知道为什么会看到它只是从QWidget.
编辑2:
可以在 github上找到 MCVE(以及我的项目的其余部分)。
千万里不及你
德玛西亚99
相关分类