• 5867阅读
  • 4回复

如何选中多行后,点击某一行中的一个button,选中的那些行还是高亮的? [复制链接]

上一主题 下一主题
离线lovehouye
 

只看楼主 倒序阅读 楼主  发表于: 2011-04-08
同事做了一个TreeView, 里面有三列,前两列是文本,第三列是个button.
现在要实现,多选几行之后,点其中的一个 Download  按钮,就可以把选中的几行全部下载
下载功能是实现了,但是还要求点击了 Download 按钮之后,选中的几行还是选中状态,而不是按了按钮的那一行才被选中。如图,请问该如何处理啊?谢谢了。


离线roywillow

只看该作者 1楼 发表于: 2011-04-08
额……可不可以在这个View的外面另外添加一个按钮来解决……
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线lovehouye

只看该作者 2楼 发表于: 2011-04-08
回 1楼(roywillow) 的帖子
额。。。。 就是不可以啊。谢谢你的回答。
离线victorsummer
只看该作者 3楼 发表于: 2011-04-08
一个思路是 把selection mode 设置成QAbstractItemView::MultiSelection
按下或者点击了你的按钮 你再重新把它select住
离线lovehouye

只看该作者 4楼 发表于: 2011-04-11
貌似问题解决了。
在过滤这个delegate 事件的时候,如果是 mouseReleaseEvent,而且点击的是 这个button,而不是text 区域,直接返回true(之前是返回的false)。在返回true 之前,做一些相应的操作,比如发出click 信号之类的。
Note: 返回false, 就是要去执行父类的这个mouseReleaseEvent。不晓得说得对不对哦。
快速回复
限100 字节
 
上一个 下一个