【问题标题】:Qt Model View Programming: Creating indexesQt 模型视图编程:创建索引
【发布时间】:2013-04-26 22:22:25
【问题描述】:

我正在阅读以下文档以增加我对模型视图编程的理解:

http://qt-project.org/doc/qt-4.8/model-view-programming.html

虽然写得很好,但我有一个关于创建索引的问题。据我了解计算和项目的索引,我们需要其父项目的索引。要计算父项的索引,我们需要子项的索引。所以它是一个循环依赖。怎么破?

如果您通过以下部分:

行和列

该图显示了一个基本表格模型的表示,其中每个项目都由一对行号和列号定位。我们获得一个 通过传递相关行来引用数据项的模型索引 和模型的列号。

 QModelIndex indexA = model->index(0, 0, QModelIndex());
 QModelIndex indexB = model->index(1, 1, QModelIndex());
 QModelIndex indexC = model->index(2, 1, QModelIndex());

模型中的顶级项总是通过将 QModelIndex() 指定为其父项来引用。这将在下一个讨论 部分。

我不明白 Qt 怎么知道计算 A 的索引,父索引应该是 QModelIndex() (即顶级项目的索引)。

【问题讨论】:

  • "Qt怎么知道计算A的索引,父索引应该是QModelIndex()"是的。

标签: qt


【解决方案1】:

据我了解计算和项目的索引,我们需要索引 它的父项。

是的,除非它是顶级项目。

要计算父项的索引,我们需要子项的索引。

没有。一个索引不能有多个父级,所以只需调用QModelIndex::parent() const

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多