Qt 遍歷QTreeView 獲取所有節點數據


一、如下圖樹形結構

  

 

二、實現代碼

  model 為私有變量,QStandardItemModel *model;

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

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

GetItem為遞歸函數,這樣可以遍歷到所有的節點

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);
        }
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM