QStandardItemModel(QColumnView)小总结
类QAbstractItemModel,QAbstractListModel,QAbstractTableModel不保存数据,
用户需要从这些类派生出子类,并在子类中定义某种数据结构来保存数据。与此不同,类QStandardItemModel
负责保存数据,每个数据项被保存为类QStandardItem的对象。在QStandardItem内部定义了一个类型为QVector
的容器,每个容器元素本质上存放一个[角色,数据子项]对,它也定义了一个名为root的数据成员。
将数据存放在QStandardItem对象中:
void setData(const QVariant &value, int role);
从QStandardItem对象中读取数据:
QVariant data(int role) const;
若数据集被表示为一个列表: //列表被看做特殊的树:不可见根具有若干个子节点,子节点不再含其他节点
QStandardItemModel listModel;