我这样设置视图的模型:
model = QSqlRelationalTableModel()
model.setEditStrategy(QSqlTableModel.OnManualSubmit)
model.setTable("VoucherPos")
model.setFilter("VoucherKey='" + str(parent_id) + "'")
model.setRelation(10, QSqlRelation("IO", "IOKey", "IOText"))
self.tblSubTable.setItemDelegate(QSqlRelationalDelegate())
model.select()
self.tblSubTable.setModel(model)
但是在表格视图中编辑第10列后,将显示id值(IOKey)。编辑之前,显示的是与权利相关的值(“ IOText”)。
如果我删除带有“ setEditStrategy”的行,则一切正常,但我想使用带有“ OnManualSubmit”的EditStrategy。
谢谢!
答案 0 :(得分:0)
我解决了这个问题。在我的原始代码中,我使用了一个子类QSqlRelationalTableModel,在其中为某些列(以及第10列)设置了对齐方式。当我使用原始的QSqlRelationalTableModel类时,一切正常。