Qt traverse all nodes in the data acquisition QTreeView

First, following the tree structure in FIG.

  

 

Second, the implementation code

void ParamSettingDlg::FuzzySearchSlot()
{

    for(int i = 0;i < model->rowCount() ;i++)
    {
        QStandardItem *item = model->item(i);

        qDebug() <<"item = " << item->text();
        GetItem(model->item(i) );
    }

}

GetItem recursive function, so that all the nodes may be traversed

void ParamSettingDlg::GetItem(QStandardItem *item)
{
    Q_ASSERT(item);


    if(item->hasChildren())
    {
        for(int i = 0;i < item->rowCount() ;i++)
        {
            QStandardItem * childitem = item->child(i);
            qDebug() << "childitem = " << childitem->text();
            GetItem(childitem);
        }
    }
}

 

Guess you like

Origin www.cnblogs.com/jiangson/p/11573475.html