我正在尝试使用在Google中找到的简单示例代码
一切正常,除非我为列设置代表,它的显示就会出现问题
以下是我设置" Bank"的line。字符串作为两行和comboboxdelegate.cpp的值
这是MainWindow的屏幕截图
问题是,如果数据存储在模型中,为什么它没有正确显示?因为如果我使用组合框更改了值,单元格中显示的内容仍会保留,如屏幕截图所示。但按下按钮显示模型中的数据已更改
P.S。我并不担心编辑器不能持久可见,我担心显示的单元格值是其他东西。
答案 0 :(得分:1)
我必须将行QString text = items[index.row()].c_str()
更改为index.data(Qt::DisplayRole).toString()
因此,在绘制委托时,Qt将访问存储在模型中的数据,而不是委托的选项向量中
我还必须将model->setData(index, _editor->currentIndex());
更改为model->setData(index, _editor->currentText());