我是 Python 新手,经过长时间的休息后再次学习编码。因此,如果这是微不足道的(几乎可以肯定是),请原谅。
我正在尝试创建 QWidget 的子类,以便更轻松地设置背景颜色(当然还有其他未来的东西)。
我有两个例子,一个有效,另一个无效。我想“修复”没有的那个。
任务是创建一个带有红色背景的窗口。
(注意。我是英国人,因此在我的定制中使用颜色而不是颜色)
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
import sys
class MainWindow(QMainWindow):
def __init__(self, *args, **kwargs):
super(MainWindow, self).__init__(*args, **kwargs)
cw1 = QWidget()
cw1.setAutoFillBackground(True)
cw1.setStyleSheet("background-color: Red;")
self.setCentralWidget(cw1)
app = QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec_()
在这个版本中,我将 QWidget 子类化以允许颜色参数
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
import sys
class ColourW(QWidget):
def __init__(self, colour, *args, **kwargs):
super(ColourW, self).__init__(*args, **kwargs)
self.setAutoFillBackground(True)
self.setStyleSheet("background-color: {colour};")
class MainWindow(QMainWindow):
def __init__(self, *args, **kwargs):
super(MainWindow, self).__init__(*args, **kwargs)
cw1 = ColourW('red')
self.setCentralWidget(cw1)
app = QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec_()
非常感谢任何帮助。