//内存中的数据(Data)
QStringList list; //创建数据显示列表
list.append("苹果");
list.append("香蕉");
list.append("桃子");
//model
QStringListModel *listmodel = new QStringListModel(list);
//View
QListView listview; //创建QListView对象
listview.setModel(listmodel); //设置模型到listview上
//view通过model获得model index,通过model index得到数据
listview.setEditTriggers(QAbstractItemView::DoubleClicked | QAbstractItemView::SelectedClicked);
listview.show();
listview.setEditTriggers(QAbstractItemView::DoubleClicked | QAbstractItemView::SelectedClicked);
双击或选择并单击列表项,进入编辑模式。
listview.setEditTriggers(QAbstractItemView::NoEditTriggers);
//不可编辑模式
listmodel->insertRow(listmodel->rowCount());
QModelIndex index=listmodel->index(listmodel->rowCount()-1,0);
listmodel->setData(index,"new item",Qt::DisplayRole);
通过数据模型添加数据到最后一行!
通过数据模型对数据进行操作。
内容在view上立即更新,是因为数据模型和view间信号与槽的作用。