1.无法自动显示指定目录。
代码想打开当前文件所在目录,ui界面却显示磁盘目录。
#include <QFileSystemModel>
QFileSystemModel *m_model; //数据模型变量
m_model=new QFileSystemModel(this);
m_model->setRootPath(QDir::currentPath()); //设置根目录
ui->treeView->setModel(m_model); //设置数据模型
解决方法:
使用QTreeView
的 setRootIndex
方法,设置模型中的一个条目作为树视图的根条目。
#include <QFileSystemModel>
QFileSystemModel *m_model; //数据模型变量
m_model=new QFileSystemModel(this);
m_model->setRootPath(QDir::currentPath()); //设置根目录
ui->treeView->setModel(m_model); //设置数据模型
//加上下面这行代码
ui->treeView->setRootIndex(m_model->index(QDir::currentPath()));
原创:
使用QTreeView显示指定目录中的文件,并自定义Header_qtreeview对应文件夹-CSDN博客
2. 选择多个项目
在ui文件QTreeView的属性编辑器中修改。
SingleSelection:单选。
MultiSelection:多选,点一下选中,再点一下取消选中。
参考贴文:对QTreeView设置多选_qtreeview 多选-CSDN博客
3.隐藏列
想隐藏Size\Type\Date Modified。
解决方法:
使用QTreeView类的setColumnHidden函数。
ui.treeView->setColumnHidden(1, true); // 隐藏第2列,如果有的话
ui.treeView->setColumnHidden(2, true); // 隐藏第3列,如果有的话
ui.treeView->setColumnHidden(3, true); // 隐藏第4列,如果有的话