QTreeWidgetItem按文本查找子项

时间:2015-04-17 08:45:16

标签: c++ qt qtreewidgetitem

如何通过文本在QTreeWidgetItem中查找项目?是否有QTreeWidget的findItem方法的模拟?

1 个答案:

答案 0 :(得分:8)

我相信你要找的是QTreeWidget中的递归搜索。为此,您必须使用Qt::MatchContains | Qt::MatchRecursive作为标志的组合。

因此,如果pMyTreeWidget是指向您QTreeWidget的指针而myText是包含您要搜索的文本的QString,假设搜索必须位于第0列,则代码看起来像:MatchExactly

QList<QTreeWidgetItem*> clist = pMyTreeWidget->findItems(myText, Qt::MatchContains|Qt::MatchRecursive, 0);
foreach(QTreeWidgetItem* item, clist)
{
    qDebug() << item->text(0);
}

如果您的要求与确切的文字相符,那么您可以使用Qt::MatchExactly|Qt::MatchRecursive代替Qt::MatchContains|Qt::MatchRecursive