请帮我写一个pyqt6 让QGroupbox控件自适应其中的QTableWidget控件大小的例子
时间: 2024-02-28 17:53:58 浏览: 63
一个简单的qt程序设置QWidget大小
好的,以下是一个使用 PyQt6 实现 QGroupBox 控件自适应其中的 QTableWidget 控件大小的例子:
```python
from PyQt6.QtWidgets import QApplication, QGroupBox, QHBoxLayout, QTableWidget, QTableWidgetItem, QVBoxLayout, QWidget
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建 QTableWidget 控件
tableWidget = QTableWidget(self)
tableWidget.setColumnCount(3)
tableWidget.setRowCount(3)
for i in range(3):
for j in range(3):
item = QTableWidgetItem(f"({i}, {j})")
tableWidget.setItem(i, j, item)
# 创建 QGroupBox 控件
groupBox = QGroupBox("Table Widget", self)
# 创建 QVBoxLayout 布局管理器并将 QTableWidget 放入其中
layout = QVBoxLayout()
layout.addWidget(tableWidget)
# 设置 QTableWidget 在布局中所占的比例
layout.setStretchFactor(tableWidget, 1)
# 设置 QGroupBox 的布局管理器
groupBox.setLayout(layout)
# 创建 QHBoxLayout 布局管理器并将 QGroupBox 放入其中
mainLayout = QHBoxLayout()
mainLayout.addWidget(groupBox)
# 设置 QWidget 的布局管理器
self.setLayout(mainLayout)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('QGroupBox Example')
self.show()
if __name__ == '__main__':
app = QApplication([])
ex = Example()
app.exec()
```
运行该程序,会弹出一个窗口,其中包含一个 QGroupBox 控件,该控件包含一个 QTableWidget 控件,当窗口大小改变时,QGroupBox 控件和 QTableWidget 控件的大小会自动调整,以保持布局的合理性。
阅读全文