pyhon代码出现如下报错:TypeError: 'PySide2.QtWidgets.QTableWidget.setItem' called with wrong argument types: PySide2.QtWidgets.QTableWidget.setItem(int, int, QTableWidgetItem) Supported signatures: PySide2.QtWidgets.QTableWidget.setItem(int, int, PySide2.QtWidgets.QTableWidgetItem)原因及解决办法,谢谢
时间: 2024-03-18 07:42:20 浏览: 462
这个错误的原因是您在调用QTableWidget.setItem()
方法时,传递了一个QTableWidgetItem
类型的参数,而它期望的参数类型是QTableWidgetItem
的子类。
解决方法是:您需要将QTableWidgetItem
实例化为其子类,例如QTableWidgetItem()
、QCheckBox()
、QComboBox()
等。这些子类继承自QTableWidgetItem
,因此具有相同的属性和方法,并且可以传递给QTableWidget.setItem()
方法。
例如,如果您想在第一行、第一列中设置一个文本单元格,您可以这样做:
from PySide2.QtWidgets import QTableWidget, QTableWidgetItem
table = QTableWidget()
table.setItem(0, 0, QTableWidgetItem("Hello World"))
如果您想在第一行、第二列中设置一个复选框,您可以这样做:
from PySide2.QtWidgets import QTableWidget, QTableWidgetItem, QCheckBox
table = QTableWidget()
checkbox = QCheckBox()
table.setItem(0, 1, QTableWidgetItem())
table.setCellWidget(0, 1, checkbox)
在这个例子中,我们使用QTableWidgetItem()
创建了一个空的单元格,并使用QTableWidget.setCellWidget()
方法将一个复选框添加到了该单元格中。
希望这个解决方案对您有帮助。
相关推荐

















