到目前为止我做了什么:
我正在实现一个包含可编辑单元格的自定义QAbstractTableModel
(在-Widget 中使用)。QTableView
这些单元格的属性在我的flags()
方法中指定,如下所示:
def flags(self, index): # Qt was imported from PyQt4.QtCore
if index.column() < 2:
return Qt.ItemIsEditable | Qt.ItemIsEnabled | \
Qt.ItemIsSelectable
else:
return Qt.ItemIsEnabled | Qt.ItemIsSelectable
前两列中的单元格被标记为可编辑,就像我想要的那样。
我想做的事:
但是,当双击单元格以触发编辑时,包含的文本将被删除并显示一个空字段。
但我不想删除和替换包含的文本,因为包含的文本可能很长,不应该重新输入。我只想编辑已经包含的内容。双击时,单元格应可编辑,其中包含先前包含的文本(可能已选中)。
问题:
我怎样才能实现这种行为?我是否需要编辑我的标志方法并为这些单元格指定不同的属性?