轉自:https://www.cnblogs.com/jiangson/p/11573475.html
一、如下圖樹形結構
二、實現代碼
model 為私有變量,QStandardItemModel *model;
1 void ParamSettingDlg::GetNode() 2 { 3 for(int i = 0;i < model->rowCount() ;i++) 4 { 5 QStandardItem *item = model->item(i); 6 7 qDebug() <<"item = " << item->text(); 8 GetItem(model->item(i) ); 9 } 10 }
GetItem為遞歸函數,這樣可以遍歷到所有的節點
1 void ParamSettingDlg::GetItem(QStandardItem *item) 2 { 3 Q_ASSERT(item); 4 if(item->hasChildren()) 5 { 6 for(int i = 0;i < item->rowCount() ;i++) 7 { 8 QStandardItem * childitem = item->child(i); 9 qDebug() << "childitem = " << childitem->text(); 10 GetItem(childitem); 11 } 12 } 13 }