📅  最后修改于: 2023-12-03 14:46:50.544000             🧑  作者: Mango
QTableWidget 是 Qt 中的一个类,用于展示表格数据。它类似于 Excel 中的表格,每个单元都可以填写数据,可以进行数据排序、筛选等操作。本文将会介绍如何使用 Python 中的 QTableWidget 添加行。
在添加行前,需要准备 QTableWidget。在 PyQt5 中,可以通过以下代码创建一个 QTableWidget:
from PyQt5.QtWidgets import QApplication, QTableWidget, QHeaderView, QTableWidgetItem
app = QApplication([])
table = QTableWidget()
table.setColumnCount(3)
table.setHorizontalHeaderLabels(['列1', '列2', '列3'])
table.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
这段代码创建了一个带有三列的空表格,并设置了表头。其中 horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
是设置表头自适应窗口大小显示。
在准备工作完成后,可以通过以下代码添加行:
row = table.rowCount()
table.insertRow(row)
table.setItem(row, 0, QTableWidgetItem('a'))
table.setItem(row, 1, QTableWidgetItem('b'))
table.setItem(row, 2, QTableWidgetItem('c'))
以上代码利用 insertRow()
方法在末尾添加一行,然后利用 setItem()
方法在新添加的行中添加数据。在这个例子中,我们添加了一行数据 'a', 'b', 'c'
。如果需要添加多行数据,只需要重复以上代码即可。
最后,我们将以上代码完整地放在一起:
from PyQt5.QtWidgets import QApplication, QTableWidget, QHeaderView, QTableWidgetItem
app = QApplication([])
table = QTableWidget()
table.setColumnCount(3)
table.setHorizontalHeaderLabels(['列1', '列2', '列3'])
table.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
row = table.rowCount()
table.insertRow(row)
table.setItem(row, 0, QTableWidgetItem('a'))
table.setItem(row, 1, QTableWidgetItem('b'))
table.setItem(row, 2, QTableWidgetItem('c'))
table.show()
app.exec_()
运行以上代码后,即可看到一个带有一行数据的表格。
以上就是使用 QTableWidget 添加行的方法。如果您想进一步了解 QTableWidget,可以参考 PyQt5 官方文档。