我创建了一个QTableWidget,其中使用setCellWidget函数为列设置组合框QComboBox。它工作正常。
这是我设置qtablewidget的方式
cb = QComboBox()
cb.addItems(["Java", "C#", "Python"])
qtablewidget.setCellWidget(row_number, column_number , cb )
但是现在当我遍历QTableWidget时,我无法弄清楚如何为每一行获取组合框的选定值?
答案 0 :(得分:2)
您必须使用cellWidget()
方法来获取给定列和行的小部件,然后使用currentText()
方法。
for r in range(qtablewidget.rowCount()):
for c in range(qtablewidget.columnCount()):
widget = qtablewidget.cellWidget(r, c)
if isinstance(widget, QComboBox):
current_value = widget.currentText()
print(current_value)