Qt 遍历 QTreeView 获取所有节点数据
实现代码model 为私有变量,QStandardItemModel *model;遍历所有节点查找并选中这一节点
·
实现代码
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);
}
}
}
遍历所有节点查找并选中这一节点
for(int i = 0;i < standardModel_down->rowCount() ;i++)
{
QStandardItem *item = standardModel_down->item(i);
Q_ASSERT(item);
if(item->hasChildren())
{
for(int i = 0;i < item->rowCount() ;i++)
{
QStandardItem * childitem = item->child(i);
qDebug() << "childitem = " << childitem->text();
if(childitem->text() == fileName1)
{
ui->treeView_down->setCurrentIndex(childitem->index());
}
}
}
qDebug() <<"item = " << item->text();
}

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)