如何通过文本在QTreeWidgetItem中查找项目?是否有QTreeWidget的findItem方法的模拟?
答案 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