QT中如何用qlistview控件显示目录下文件的详细信息

zhw5403 2009-11-16 04:15:37
大家好,我是一个QT新手,请问QT中如何用qlistview控件显示目录下文件的详细信息,是一栏一拦的,如名字,大小等,急用,请大家帮个忙,谢谢大家。
...全文
2546 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
紫川流风 2011-08-02
  • 打赏
  • 举报
回复
我也在找啊,不过貌似 可以用 custom delegate 来实现。
http://www.developer.nokia.com/Community/Wiki/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8Model_View_delegate%E8%87%AA%E5%AE%9A%E4%B9%89%E5%88%97%E8%A1%A8
nukin 2009-11-25
  • 打赏
  • 举报
回复
可以用QListView,详细信息用QFileInfo
dext 2009-11-18
  • 打赏
  • 举报
回复
这个问题也改结了
用 QDirModel

在你的 HeadFile 中 添加 成员 QDirModel q;
在你的 构造函数中添加

ui->listView->setModel(&q);
q.setFilter(QDir::AllEntries);
ui->listView->setRootIndex(q.index(QDir::homePath() + "/Desktop"));

这个代码 是Linux下的,Windows下,自己改一个合适的位置。
zhw5403 2009-11-18
  • 打赏
  • 举报
回复
因为在做一个程序,用QListView已经实现了在QListView::IconMode显示模式下需要的功能,所以想继续用它,如果有方法,请再指点下,非常感谢。
zhw5403 2009-11-18
  • 打赏
  • 举报
回复
我的目的是把一个目录及其子目录下的图片用详细信息列出来,图标要用图片的缩略图,我想用Qtreeview,但不知道该怎样实现,还请大家多多帮助,谢谢。
zhw5403 2009-11-18
  • 打赏
  • 举报
回复
感谢dext的回复,你的例子中的ui是什么,我试过用QDirModel ,也不显示文件的详细信息呀!能具体些么?谢谢。
zhw5403 2009-11-17
  • 打赏
  • 举报
回复
感谢大家的帮助,Qlistview真的无法实现么?
zhu_xz 2009-11-17
  • 打赏
  • 举报
回复
你为啥非要用QListView啊?
zhw5403 2009-11-17
  • 打赏
  • 举报
回复
非常感谢zhu_xz,我现在想让qlistview或它的子类在(QListView::ListMode)显示模式下能够显示文件的详细信息,请问有什么具体方法么?
dext 2009-11-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhu_xz 的回复:]
用QTableView而非QListView
代码如下:
QFileSystemModel model;
// 设置model监视的目录,其下的修改会立刻signal通知view
model.setRootPath(QDir::rootPath());

QTableView view;
view.setModel(&model);
// 设置view显示的目录
view.setRootIndex(model.index(QDir::homePath()));
view.show();
[/Quote]

正确,但要确保 QFileSystemModel 在 QTableView 运行期间 一直有效
所以,要把 QFileSystemModel 成为一个成员变量,或者 用 new 在堆上分配。
zhu_xz 2009-11-17
  • 打赏
  • 举报
回复
不行,QListView只能显示一列,除非你派生一个子类,但那样似乎显得很奇怪
wjlsmail 2009-11-16
  • 打赏
  • 举报
回复
Mark
zhu_xz 2009-11-16
  • 打赏
  • 举报
回复
用QTableView而非QListView
代码如下:
QFileSystemModel model;
// 设置model监视的目录,其下的修改会立刻signal通知view
model.setRootPath(QDir::rootPath());

QTableView view;
view.setModel(&model);
// 设置view显示的目录
view.setRootIndex(model.index(QDir::homePath()));
view.show();

16,240

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧