我尝试QStringListModel
使用以下代码为 a 设置自定义数据,但setData
始终返回 false ,除非角色为Qt::EditRole
:
QStringListModel *model = new QStringListModel;
QStringList list ;
list << "str1" << "str2" << "str3";
model->setStringList(list);
QComboBox *box = new QComboBox;
box->setModel(model);
box->show();
qDebug()<<model->index(0);
qDebug()<<model->setData(model->index(0), 1, Qt::UserRole );
qDebug()<<model->data(model->index(0), Qt::UserRole ).toString();