PyQt5 QTableWidget:使最后一列可编辑



如何访问QTableWidget的最后一列?我想用这样的东西把它设置为可编辑:

item = QtWidgets.QTableWidgetItem(stuff)
item.setFlags(QtCore.Qt.ItemIsEnabled) #make everything editable
self.qtable_widget.setItem(row, column, item)

要修改项目组的编辑能力,最好使用委托,如本解决方案所示,此问题略有不同,因此我修改了我的解决方案:

class ReadOnlyDelegate(QtWidgets.QStyledItemDelegate):
def createEditor(self, parent, option, index):
# last column
if index.column() == (index.model().columnCount() - 1):
return super().createEditor(parent, option, index)
delegate = ReadOnlyDelegate(self.qtable_widget)
self.qtable_widget.setItemDelegate(delegate)

最新更新