39 lines
1000 B
C++
39 lines
1000 B
C++
#include "directory.h"
|
|
#include "ui_directory.h"
|
|
|
|
directory::directory(QWidget *parent) :
|
|
QDialog(parent),
|
|
ui(new Ui::directory)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
QString sPath = "T:/";
|
|
dirmodel = new QFileSystemModel(this);
|
|
dirmodel->setFilter(QDir::NoDotAndDotDot | QDir::AllDirs);
|
|
dirmodel->setRootPath(sPath);
|
|
ui->treeView->setModel(dirmodel);
|
|
|
|
QModelIndex index = dirmodel->index(sPath, 0);
|
|
ui->treeView->setRootIndex(index);
|
|
filemodel = new QFileSystemModel(this);
|
|
filemodel->setFilter(QDir::NoDotAndDotDot | QDir::Files);
|
|
filemodel->setRootPath(sPath);
|
|
|
|
ui->listView->setModel(filemodel);
|
|
index = filemodel->index(sPath,0);
|
|
ui->listView->setRootIndex(index);
|
|
}
|
|
|
|
directory::~directory()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
|
|
void directory::on_treeView_clicked(QModelIndex index)
|
|
{
|
|
QString sPath = dirmodel->fileInfo(index).absoluteFilePath();
|
|
ui->listView->setRootIndex(filemodel->setRootPath(sPath));
|
|
filemodel->setNameFilters(QStringList());
|
|
}
|