我正在做一个桌面应用程序,其中使多个类从QWidget继承,而问题是当我尝试将颜色应用于每个背景时,它似乎不起作用。
我希望主应用程序具有黑色背景,而应用程序具有白色背景(其中包含其他小部件,但现在我只是弄清楚背景),但是却得到了一个全黑的窗口。
class Main(QMainWindow):
def __init__(self):
super().__init__()
self.main_widget = QWidget(self)
self.setCentralWidget(self.main_widget)
self.main_widget.setStyleSheet('background-color: black')
self.LO = QVBoxLayout(self.main_widget)
self.square1 = Square()
self.square2 = Square()
self.LO.addWidget(self.square1)
self.LO.addWidget(self.square2)
class Square(QWidget):
def __init__(self):
super().__init__()
self.setStyleSheet('background-color: #FFFFFF')
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWin = Main()
mainWin.show()
sys.exit(app.exec_())
这是我期望发生的情况(背景为黑色,小部件为白色):
答案 0 :(得分:0)
似乎从QWidget继承的类没有采用样式表,但是当您从QFrame继承时,它将自动按预期工作。我不知道为什么在QtDesigner中似乎可以将QWidgets用作框架。