Qt 实现树时,要传递给beginInsertRows()的参数。

Qt 实现树时,要传递给beginInsertRows()的参数。,qt,qtreeview,qstandarditemmodel,Qt,Qtreeview,Qstandarditemmodel,我对canFetch()和fetchMore()函数有疑问。 我正在实现树结构,当我滚动到末尾时,将调用canfetch(),如果返回true,则将调用fetchMore(),其中我们必须获取数据并将项目插入树中 void model::fetchMore(const QModelIndex& f_parent) { //fetch the data needed and create items beginInsertRows(f_parent, row, lastRo

我对canFetch()和fetchMore()函数有疑问。 我正在实现树结构,当我滚动到末尾时,将调用canfetch(),如果返回true,则将调用fetchMore(),其中我们必须获取数据并将项目插入树中

void model::fetchMore(const QModelIndex& f_parent)
{
    //fetch the data needed and create items
    beginInsertRows(f_parent, row, lastRow);
    endInsertRows();
}
请在beginInsertRows中告诉我,我们到底需要指定哪些数字,这让我很困惑

我现在已经获取了一些数据,从上面我有5个孩子的,然后是10个家长,每个家长有10个孩子的。(f_父母已经有5个孩子)

现在我需要再插入5个孩子和10个家长

现在,我需要在beginInsertRows()中准确指定哪些数字

  • beginInsertRows(f_parent,5,f_parent.row()+10)
  • beginInsertRows(f_parent,f_parent.row(),f_parent.row()+10)
  • beginInsertRows(f_父,5,10)
您检查过文档了吗?看起来很清楚,并且有一个图表来解释所需的参数@AngryDuck文档用列表而不是树来描述每件事。。我已经阅读了文档,也用谷歌搜索了一下。这个例子有更多的信息:。基本上,从不可见的根索引开始,每个父级都是2D表的父级。此表中的每个单元格也可以是另一个2D表的父单元格,依此类推。要回答您的问题,您需要多次调用
beginInsertRows
。每个家长一次,每批孩子一次。