Listar um conteúdo especifico de uma pasta
-
Pessoal,
Estou estudando Qt e não estou conseguindo fazer um filtro para um determinado tipo de arquivo.
O que quero fazer é:Dentro da pasta /dev quero listar todos os arquivos que contem tty*. Procurei nos exemplos e consigo listar a raiz com este código:
QFileSystemModel model;
model.setRootPath()
QTreeView tree;
tree.setModel(&model); -
lima_will,
Se vc está usando o "QFileSysteModel":http://doc.qt.digia.com/4.7-snapshot/qfilesystemmodel.html, use o método "setFilter" para configurar o filtro de arquivos.
-
Tio Roy,
Nem precisa pedir desculpa eu que agradeço a ajuda e paciencia em ensinar.
Não sei o que estou fazendo de errado mas está retornando erro quando tento fazer o código que você passou, fiz assim:
@#include <QtGui>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);QStringList lista; lista << "tty"; QFileSystemModel model; model.setRootPath(""); model.setNameFilters(lista); // Demonstrating look and feel features tree.setAnimated(false); tree.setIndentation(20); tree.setSortingEnabled(true); tree.setWindowTitle(QObject::tr("Dir View")); tree.resize(640, 480); tree.show(); return app.exec();
}@
[URL=http://imageshack.us/photo/my-images/341/capturadetelaem20121010.png/][IMG]http://imageshack.us/a/img341/2526/capturadetelaem20121010.png[/IMG][/URL]
!http://imageshack.us/photo/my-images/341/capturadetelaem20121010.png/()!
-
lima_will,
Onde vc está criando o "tree"?
Num programa visual, você não coloca este código no "main" e sim numa classe que herda de Window.
Como você está iniciando, acredito que seja melhor vc estudar um pouco.
Dê uma olhada em 2 vídeos postados pelo João Pagotto (que está postado "aqui":http://qt-project.org/groups/qt_brazil/updates#update-1344 no grupo Brazil)
-
O codigo ficaria assim , e pode colocar no proprio main.cpp mesmo ;-P
@
#include <QApplication>
#include <QtGui>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);QStringList lista; lista << "*.png" <<"*.jpg"; QTreeView tree; QFileSystemModel *model = new QFileSystemModel(); model->setRootPath("/"); model->setFilter(QDir::Files); model->setNameFilters(lista); tree.setModel(model); // Demonstrating look and feel features tree.setAnimated(false); tree.setIndentation(20); tree.setSortingEnabled(true); tree.setWindowTitle(QObject::tr("Dir View")); tree.resize(640, 480); tree.show(); return app.exec();
}
@