在自定义委托中更改了文本上的PyQt触发器setModelData
我有一个自定义模型和一个使用qLineEdit的自定义委托。编辑完成后,我可以更新模型。唯一的问题是我想触发在自定义委托中更改了文本上的PyQt触发器setModelData,qt,pyqt,Qt,Pyqt,我有一个自定义模型和一个使用qLineEdit的自定义委托。编辑完成后,我可以更新模型。唯一的问题是我想触发 def setModelData(self, editor, model, index): model.setData(index, editor.text()) 当lineEdit的文本更改被触发时,任何用户输入的数据都将立即更新 我可以截获textChanged信号,但如何获得model参数,以便将其传递给setModelData?我可以从发件人访问编辑器,
def setModelData(self, editor, model, index):
model.setData(index, editor.text())
当lineEdit的文本更改被触发时,任何用户输入的数据都将立即更新
我可以截获textChanged信号,但如何获得model
参数,以便将其传递给setModelData
?我可以从发件人访问编辑器
,并且索引
可以与编辑器一起存储
或者,我是否可以触发一个信号,告诉视图从编辑器更新模型,即使编辑器仍然打开
干杯。您不能使用
qabstractemview.commitData()
?或者,如果您有权访问delagate,QAbstractItemDelegate::commitData()
?如果我没有弄错的话,commitData
方法会在不关闭编辑器的情况下从编辑器中更新模型。谢谢!这使我走上了正确的道路!您不能使用qabstractemview.commitData()
?或者,如果您有权访问delagate,QAbstractItemDelegate::commitData()
?如果我没有弄错的话,commitData
方法会在不关闭编辑器的情况下从编辑器中更新模型。谢谢!这使我走上了正确的道路!