如何通过代码或单击选择QTableWidget中的单元格进行编辑
这是一个两部分的问题:
我有一个10x10的QTableWidget,每个单元格里都有QTableWidgetItem。出于某种原因,点击一个单元格并不能直接编辑它,我需要双击这个单元格才能进入编辑状态。
有没有办法把这个行为改成单击就可以编辑?
有没有办法在窗口创建时,默认选中第一行的第二个单元格并准备好编辑?
2 个回答
2
你还可以使用 setCurrentCell 这个方法。
比如,你可以这样写:table.setCurrentCell(0,1)
这个方法的意思是:QTableWidget.setCurrentCell (self, int row, int column),也就是说你可以指定某一行和某一列的单元格为当前选中的单元格。
3
你可以通过 setEditTriggers 来改变编辑行为,方式有很多。
如果你想要单击就编辑,可以试试:
table.setEditTriggers(QAbstractItemView.CurrentChanged)
当前正在编辑的单元格可以通过 editItem 来设置:
table.editItem(table.item(0, 1))
如果你想选择一个单元格但不想编辑它,可以使用 setCurrentCell:
table.setCurrentCell(0, 1)