#include "mainwindow.h" #include "ui_mainwindow.h" #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_actionTest_triggered() { QString path = ".."; QTreeWidgetItem * top = new QTreeWidgetItem; top->setText (0, path); ui->treeWidget->addTopLevelItem (top); display (top, path, 3); } void MainWindow::display(QTreeWidgetItem * top, QString path, int level) { QDir dir (path); QFileInfoList list = dir.entryInfoList (); for (int i = 0; i < list.size(); i++) { QString n = list[i].fileName (); if (n != "." && n != "..") { QTreeWidgetItem * item = new QTreeWidgetItem; item->setText (0, n); top->addChild(item); if (list[i].isDir()) { if (level > 0) display (item, list[i].filePath(), level-1); } else { item->setText (1, QString::number (list[i].size ())); } } } }