在 PyQt5 的标签内添加标签

Adding a label within a label on PyQt5

我正在使用 PyQt5 创建标签,如下所示。但是我希望标签的顶部是不同的颜色,并且每个标签都有单独的文本行。有没有办法完成这样的事情?

这是我正在使用的代码。

def CreateModule():
    label = QLabel()
    label.setAlignment(Qt.AlignCenter)
    label.setStyleSheet("background-color:purple")
    label.setMaximumWidth(300)
    label.setMaximumHeight(200)
    return label

虽然使用 limited support Qt provides for html 可以做到这一点,但使用嵌套布局通常更容易并且更面向对象

def createModule():
    container = QWidget()
    layout = QVBoxLayout(container)
    layout.setContentsMargins(0, 0, 0, 0)
    header = QLabel('Title', alignment=Qt.AlignCenter)
    header.setStyleSheet('color: white; background: black;')
    content = QLabel('Lorem ipsum', alignment=Qt.AlignCenter)
    content.setStyleSheet('color: white; background: purple;')
    layout.addWidget(header)
    layout.addWidget(content)
    container.setMaximumSixe(300, 200)
    return container