您的位置:首页 > 编程语言 > Qt开发

Qt编程25:QDirModel与QTreeView使用显示目录结构

2014-07-21 11:17 417 查看
QDirModel类封装了计算机的文件系统并且可以显示(或者隐藏 )不同的文件属性。可以为这个模型应用过滤器,这样就可以根据自己的需要显示不同类型的文件系统条目,并且用不同的方式对这些条目进行排序。

QdirModel默认带有四个列:



可以通过继承QDirModel重写headerData()函数来实现重命名字段名的效果:

QVariant headerData(int section, Qt::Orientation orientation, int role) const
{
if(role != Qt::DisplayRole)
return QVariant();

if(orientation == Qt::Horizontal)
{
switch(section)
{
case 0:
return "名称";
case 1:
return "大小";
case 2:
return "文件类型";
case 3:
return "修改时间";
}
}

return QAbstractItemModel::headerData(section, orientation, role);
}




//构建自定义模型
m_model = new MyDirModel;

//设置可编辑,QDirModel默认带有文件重命名功能
m_model->setReadOnly(false);
//设置排序方式
m_model->setSorting(QDir::Name);

//构建tree对象
m_view = new QTreeView(this);
//设置tree模式
m_view->setModel(m_model);
//设置tree可以排序
m_view->setSortingEnabled(true);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐