QT实现资源管理器总结

       项目中需要实现的资源管理器做完了,使用的是QT,实现TreeView与ListView数据统一显示文件。现在总结一下开发过程中遇到的一些问题以及我的解决方法。

1. TreeView与ListView显示文件

      Qt的QTreeWidget和QListWidget接口很简单易用。但是如果用来实现文件资源管理使用它们不是很方便。QT提供了model-view模式。使用model(QFileSystemModel)和view(QTreeView & QListView)来实现资源管理更为简单方便,可以轻松的实现QTreeView QListView同时更新。具体用法如下:

       m_dir_model.setRootPath(QDir::currentPath());
       m_dir_model.setReadOnly(true);    

       m_resource_tree->setModel(&m_dir_model);
       m_resource_tree->setRootIndex(m_dir_model.index(m_root_path));

       m_current_listview->setModel(&m_dir_model);
       m_current_listview->setRootIndex(m_dir_model.index(m_root_path));

       这样QTreeView和QListView就可以显示当前路径下文件和文件夹信息。

      还有个功能是点击QTreeView的某一个文件夹,更新QListView显示的内容。这个功能实现使用信号槽。

connect(m_resource_tree,        SIGNAL(clicked(QModelIndex)),    this, SLOT(UpdateCurrentTab(const QModelIndex&)));

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值