Qt 5.2 版本关于 beginInsertRows()函数疑问
小弟Qt新手,有c基础由于项目原因必须速成Qt
,最近看到 view-model模式,遇到一个函数 beginInsertRows(QModelIndex(), first, last)
这个函数一般跟 endInsertRows()一起用通知其他数据数据更改,我不太明白的是beginInsertRows这个函数的第一个参数是什么意思啊?
我打印了一下值,方法是这样的
const QModelIndex &index = QModelIndex();
beginInsertRows(index, first, last)
然后打印 index.row();发现是 -1,然后把begin...Rows这个函数注释掉打印index.row()还是-1
这说明这个参数系统没有用到啊! 这不说明第一个参数系统没有用吗? 求大神解释一下,多谢!
note: 我的model 继承的是 QAbstractListModel
[解决办法]
这个是 Qt Model/View 的基本概念,因为简单说,因为model有 列表,树 和 网 等多种形态。所以 这个 index 也就相对复杂点。
请参看:
http://qt-project.org/doc/qt-4.8/model-view-programming.html