[问题] Qt的listWidget显示方式(已附图)

楼主: ruby122825 (Ruby)   2015-06-23 08:09:24
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Windows, Linux
问题(Question):
想问一下Qt的List widget可以像windows的档案总管一样,将档案分成数列来显示吗?
我现在就是在做一个画面只让csv档的档名出现在画面,
失败成品:
http://666kb.com/i/czqzh1ug0chb0vc8u.jpg
但是不知道该如何让他的档名可以显示为很多列,而且显示的位置大小固定。
如下图:
http://666kb.com/i/czqzi8kk6gfh2pr5q.jpg
(小画家剪贴图很烂请原谅)
我想要每列最大有25行,超过25个档案的话,就换行显示
我不想要有直的scroll bar,只想要有横的scroll bar
还是我该使用QtableView?
套入QFileSystemMolde
但是我发现我也遇到一样无法多排显示档名的问题
而且还多几列显示档案大小,档案种类...
喂入的资料(Input):
Local 的档案
预期的正确结果(Expected Output):
使用Qlistwidget将档案显示的方式跟windows档案总管一样
补充说明(Supplement):
我是初学者还请鞭小力一点>__<
作者: uranusjr (←這人是超級笨蛋)   2015-06-23 08:33:00
看不懂, 请附图
楼主: ruby122825 (Ruby)   2015-06-23 09:33:00
对不起,手机不稳我无法编辑文章
作者: BlazarArc (Midnight Sun)   2015-06-23 10:34:00
档案总管看起来不是tableview吗http://doc.qt.io/qt-5.4/qtableview.html
作者: Thisisnotptt (这不是PTT)   2015-06-23 10:36:00
是Qt QTreeWidget吗,可以按[+]显示资料夹下更多档
作者: BlazarArc (Midnight Sun)   2015-06-23 22:37:00
自己建 model 灌进TableView,
楼主: ruby122825 (Ruby)   2015-06-24 08:02:00
该用什么model好啊?对不起呀~我文科出身真的不太会
作者: BlazarArc (Midnight Sun)   2015-06-24 11:42:00
http://doc.qt.io/qt-5.4/qstandarditemmodel.htmlrows 跟 columns 要根据你的需求自己设定
作者: uranusjr (←這人是超級笨蛋)   2015-06-24 23:25:00
我觉得 subclass QAbstractTableModel 应该更方便http://d.pr/19Ud9 随意做了一个 demo, 应该不难理解
作者: BlazarArc (Midnight Sun)   2015-06-24 23:45:00
哦哦 楼上专业 我也学到东西 XD
楼主: ruby122825 (Ruby)   2015-06-27 20:32:00
uranusjr真是太感激你了!!!我还是有个疑问 为什么ListTableModel函数里什么都没有写?却可以执行其他的columnCount,rowCountdata等等其他函数?是因为QModelIndex &parent = QModelIndex()吗
作者: uranusjr (←這人是超級笨蛋)   2015-06-27 23:32:00
QAbstractTableModel 已经预先定义一些函式, 会呼叫其他函式用来取得资料, 而这些函式会被 QTableView 呼叫所以你只要覆写一小部分函式描述资料要如何取得, 就可以让 QTableView 要求资料时真的获得你想提供的资讯http://doc.qt.io/qt-5/model-view-programming.html
楼主: ruby122825 (Ruby)   2015-06-29 10:23:00
真是太感激了!最后想确定是不是我一定要再做一个QabstractTable class才可以?
作者: BlazarArc (Midnight Sun)   2015-06-29 21:41:00
看你要客制化的程度 越高就要用越抽象的像你的定死25行 也可自己算row col用StandardItemModelQStandardItemModel不够用就用QAbstractTableModel在往上就QAbstractItemModel

Links booklink

Contact Us: admin [ a t ] ucptt.com