qtablewidget 动态添加item
时间: 2025-01-13 10:13:41 浏览: 47
### 动态向 QTableWidget 添加项
为了在 PyQt 或 PySide 的 `QTableWidget` 中动态添加项目,可以使用 `setItem()` 方法来设置特定单元格的内容。以下是具体实现方法:
#### Python 示例代码
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QTableWidget, QTableWidgetItem
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.table_widget = QTableWidget(0, 3) # 创建一个具有三列的表单
layout = QVBoxLayout()
layout.addWidget(self.table_widget)
add_button = QPushButton('Add Row')
add_button.clicked.connect(self.add_row)
layout.addWidget(add_button)
self.setLayout(layout)
def add_row(self):
row_count = self.table_widget.rowCount() # 获取现有行数
self.table_widget.insertRow(row_count) # 插入新行
for col in range(3): # 遍历每一列并填充数据
item = QTableWidgetItem(f'Item {row_count},{col}')
self.table_widget.setItem(row_count, col, item)
if __name__ == '__main__':
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
```
此段代码创建了一个简单的窗口应用程序,在其中包含一个按钮用于触发新增一行的操作,并自动为该行填充值[^1]。
当点击 "Add Row" 按钮时,会调用 `add_row()` 函数,它负责获取当前表格中的总行数并通过 `insertRow()` 方法插入新的一行;接着通过循环遍历每列,并利用 `setitem()` 设置对应的单元格内容。
阅读全文
相关推荐


















