Qt模型视图编程:创建索引
我正在阅读以下文档,以加深对模型视图编程的理解:Qt模型视图编程:创建索引,qt,Qt,我正在阅读以下文档,以加深对模型视图编程的理解: http://qt-project.org/doc/qt-4.8/model-view-programming.html 尽管写得很好,但我对创建索引有一个疑问。据我所知,要计算项目的索引,我们需要其父项目的索引。要计算父项的索引,我们需要子项的索引。所以这是一个循环依赖。你怎么打破它的 如果您阅读以下部分: 行和列 该图显示了基本表模型的表示形式,其中每个项都由一对行号和列号定位。我们获得了 通过传递相关行引用数据项的模型索引 以及模型的列编
http://qt-project.org/doc/qt-4.8/model-view-programming.html
尽管写得很好,但我对创建索引有一个疑问。据我所知,要计算项目的索引,我们需要其父项目的索引。要计算父项的索引,我们需要子项的索引。所以这是一个循环依赖。你怎么打破它的
如果您阅读以下部分:
行和列
该图显示了基本表模型的表示形式,其中每个项都由一对行号和列号定位。我们获得了
通过传递相关行引用数据项的模型索引
以及模型的列编号
模型中的顶级项始终通过指定QModelIndex()作为其父项来引用。这将在下一节中讨论
节
我不明白Qt是如何知道计算A的索引的,父索引应该是QModelIndex()(即顶级项的索引) 据我所知,计算和项目的指数,我们需要的指数 它的父项 是的,除非它是顶级项目 要计算父项的索引,我们需要子项的索引
不可以。一个索引不能有多个父索引,所以只需调用
QModelIndex::parent()const
“Qt如何知道计算一个索引的索引,父索引应该是QModelIndex()”它是这样的。
QModelIndex indexA = model->index(0, 0, QModelIndex());
QModelIndex indexB = model->index(1, 1, QModelIndex());
QModelIndex indexC = model->index(2, 1, QModelIndex());