2011-03-17 58 views
1

我想为我的文件浏览器应用程序实现搜索选项。 我可以在接受用户的输入后获得该项目。现在,我想将这个项目添加到我的列表视图。在搜索结束后,该项目应该可以点击打开它们。如何使用Qt添加找到的项目到QListView?

这里是一段代码...任何建议将不胜感激。

void Browser::search() 
{ 
QDirIterator it(path,QDir::AllDirs|QDir::Files|QDir::NoSymLinks|QDir::NoDotAndDotDot,QDirIterator::Subdirectories); 
while(it.hasNext()) 
{ 
    it.next(); 
    if(it.fileInfo().completeBaseName().contains(content,Qt::CaseInsensitive)) 
    { 
     qDebug()<<"it.fileinfo = "<<it.fileInfo().fileName(); 
    } 

} 

path.clear(); 
} 
+1

不要忘记关闭这个问题:) – Seba 2011-03-18 13:23:46

回答

0

而不是列表视图,你可以使用列表小部件,只需使用方法addItem或addItems填充列表。如果您的列表很小/很简单,那么在我看来,使用Model-View范例并不合适。

看QListWidget在文档

+0

列表不是很简单,我正在做一个文件浏览器和搜索只是一个功能,我想包括。所以我决定使用模型/视图概念。我可以包含QListWidget到QListView吗? – prakashpun 2011-03-21 03:39:42

+0

你的意思是包含QListWidget ot a ...? – Seba 2011-03-21 14:12:12

+0

我的意思是说,如果我找到与我的搜索查询匹配的项目。我如何将它添加到列表中,并且能够双击它以打开该文件或文件夹? – prakashpun 2011-03-28 06:49:47

0

您应该详细了解model/view concept。您将数据添加到模型而不是视图。在本文章节中,您可以找到解决您的问题的“可编辑项目”和“可调整大小的模型”。

+0

thanx的乌拉圭回合的答复。将做更多的挖掘这个主题 – prakashpun 2011-03-18 04:00:54