在 Qt 中,您可以通过将一个 QWidget 添加到另一个 QWidget 的布局中来实现在 widget 中添加 widget。具体而言,您需要执行以下步骤:
- 创建要添加的 QWidget 对象。
- 创建要添加到的 QWidget 对象,并使用
setLayout()
函数设置其布局。 - 将第一步创建的 QWidget 添加到第二步创建的 QWidget 的布局中。
下面是一个示例代码,演示如何将一个 QPushButton 添加到一个 QLabel 内部:
from PyQt5.QtWidgets import QApplication, QLabel, QPushButton, QVBoxLayout, QWidget
# 创建应用程序和窗口
app = QApplication([])
window = QWidget()
# 创建QPushButton和QLabel对象
button = QPushButton("Click me")
label = QLabel("Hello World")
# 创建一个垂直布局
layout = QVBoxLayout()
layout.addWidget(button)
# 将QPushButton添加到QLabel的布局内
label.setLayout(layout)
# 显示窗口
window.setCentralWidget(label)
window.show()
# 运行应用程序
app.exec_()
在上面的示例代码中,我们首先创建了一个 QPushButton 和一个 QLabel。然后,我们创建了一个 QVBoxLayout 对象,将 QPushButton 添加到该布局中。最后,我们将 QLabel 的布局设置为该 QVBoxLayout 对象,从而将 QPushButton 添加到 QLabel 内部。最后,我们将 QLabel 作为窗口的中央控件,并显示窗口。