• 9397阅读
  • 8回复

QListWidget能实现类似资源管理器的功能吗? [复制链接]

上一主题 下一主题
离线billyhhzh
 

只看楼主 倒序阅读 楼主  发表于: 2006-09-13
小弟用QListWidget加入了几个item,
但不能实现对每个item增加action,即没有鼠标右键功能

是否需要使用QListview, 再把每个item做成类似toolbutton?
小弟新手,请牛人们多多指教!!!
[ 此贴被billyhhzh在2006-09-13 14:16重新编辑 ]
离线billyhhzh

只看该作者 1楼 发表于: 2006-09-14
继续摸索了下,QListview的item好难定义啊!看不懂~~e文又不好~~
真想找个简单的例子学习下....
离线billyhhzh

只看该作者 2楼 发表于: 2006-09-14
急啊,有什么办法能实现资源管理器的功能哦?
大侠们能给个提示吗?
离线billyhhzh

只看该作者 3楼 发表于: 2006-09-16
我要实现这样的功能
1、以小图标+文字表示一个单元
2、通过数据库自动生产单元格数量,右边和下边有滚动条
3、每个单元右键弹出不同的菜单功能
4、在单元之间的空间中,右键菜单和单元格的菜单内容不一样
5、并能实现drag, drop功能


我使用QListWidget能实现其中的
1、以小图标+文字表示一个单元
2、通过数据库自动生产单元格数量,右边和下边有滚动条
5、并能实现drag, drop功能
但是实现不了3、4
离线andelie

只看该作者 4楼 发表于: 2006-09-16
3和4的功能应该可以通过重新改写鼠标事件实现,比如单击右键实现探出菜单之类的。可能的话你最好把代码传上来,这样大家也许可以帮你想想。
离线billyhhzh

只看该作者 5楼 发表于: 2006-09-18
我是这样想的:如果能把QListWidget中的item加上addaction功能不就OK了吗?
那么改用QListView就行了是吗?

我按着自己的想法做了下,发现QListView很难用,model定义都看不懂,
想找些例子关于QListView用法的,也一时看不懂~~所以这些天好郁闷啊~~
离线cocalele
只看该作者 6楼 发表于: 2006-09-18
引用第5楼billyhhzh2006-09-18 10:50发表的“”:
我是这样想的:如果能把QListWidget中的item加上addaction功能不就OK了吗?
那么改用QListView就行了是吗?
我按着自己的想法做了下,发现QListView很难用,model定义都看不懂,
想找些例子关于QListView用法的,也一时看不懂~~所以这些天好郁闷啊~~

Qt的model的确不好用.
离线myer

只看该作者 7楼 发表于: 2006-09-19
重新实现void contextMenuEvent ( QContextMenuEvent * event ) 可以方便的实现所谓鼠标右键功能;
要弹出不同菜单,在该函数中,根据event.pos所在item的不同自己处理即可;
drag、drop功能,在Qt的实现非常简单,可以参考一些demo,重新实现几个相关虚函数就可以了。

btw:
Qt的model还是非常灵活而且易用,还是应该习惯这样模式,当然对于一些特别简单的例子,Qt提供的item模型也足够用了。Qt4中加入了几个著名的模式应用,像MVC、COMMAND等所实现的table、list以及undo、redo都挺方便的。
http://user.qzone.qq.com/56430808
离线billyhhzh

只看该作者 8楼 发表于: 2006-09-21
老大,终于出来啦!!~~~
void contextMenuEvent ( QContextMenuEvent * event ),我用过,是挺好用的,不过只用过global; event.pos我再试试!
再教教小的们怎么用model,还有怎么用你说的怎么用undo,redo??
快速回复
限100 字节
 
上一个 下一个