当前位置:   article > 正文

Model/view 第二部分:QFileSystemModel的使用_qfilesystemmodel 设置显示信息 qlistview

qfilesystemmodel 设置显示信息 qlistview

Model/view 第二部分:QFileSystemModel的使用

QFileSystemModel类的基本功能:

QFileSystemModel提供了一个可用于访问本机文件系统的数据模型,其和视图组件QTreeView结合使用,可以用目录树的形式显示本机上的文件系统

同Windows的资源管理器一样。

通过使用setRootPath()函数为QFileSystemModel设置一个根目录,例如:

QFileSystemModel *model = new QFileSystemModel;

model->setRootPath(QDir::currentPath());

QDir::currentPath()用于获取当前应用程序的当前路径

接下来就做个小项目来实践下

目的:通过路径获取当前系统的结构并且使用TreeView显示出来,在TreeView中点击一个目录时,其目录的下层文件信息在listview和tableview中显示出来。

  1. ui建立:新建三个groupBox,在其内部放入Treeview,ListView,TableView
  2. 代码实现:
    1. 新建一个QFileSystemModel:QFileSystemModel *model = new QFileSystemModel();
  3. MainWindow构造函数中代码如下:

 

                model->setRootPath(QDir::currentPath());//设置根目录

                将数据模型设进个view中:

                ui->treeView->setModel(model);

                ui->listView->setModel(model);

                ui->tableView->setModel(model)

  1. 当treeview被单击时,将tableview和listview的setRootPath重新设置根目录即可。相关的根目录信息包含在QModelIndex中。具体代码如下:

  connect(ui->treeView,SIGNAL(clicked(QModelIndex)),

ui>listView,SLOT(setRootIndex(QModelIndex)));

    connect(ui->treeView,SIGNAL(clicked(QModelIndex)),ui->tableView,SLOT(setRootIndex(QModelIndex)));

运行后的结果如下图所示:

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/764704
推荐阅读
相关标签
  

闽ICP备14008679号