qt qtreewidget自动展开失效
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt qtreewidget自动展开失效相关的知识,希望对你有一定的参考价值。
参考技术A QTreeWidget的一个函数即可搞定,voidsetItemsExpandable ( bool enable ), 该函数来自QTreeView。设置是否允许用户展开和收缩Item。因此要保持展开状态我们只需调用树形控件的两个接口就好了设置的就是itemsExpandable这个属性,默认是true。我们只需要设置为false就不允许用户收缩/展开Item了。但是我们的目的是要让Item始终保持展开,那不是很矛盾吗?实际上不允许用户收缩/展开但是我们可以通过接口来使Item展开。调用QTreeWidgetItem的setExpanded。更快捷的方式就是调用QTreeWidget的expandAll()。
关于qt中的QTreeWidget的拖放问题
我在做一个ftp下载的客户端
其中本地目录和远程目录是两个QTreeWidget
我现在要实现拖放功能,以下是两个QTreeWidget的样式
local:
FileA
FIleB
FileC
remoto:
DirA
DirA_1
DirA_2
DirB
当我拖动FileA到DirA上的时候,展开DirA,我现在遇到的问题是,拖到DirA上时没办法获取DirA这个item,
我现在的做法是dragEnterEvent事件触发是connect一个itemEntered的信号,这样鼠标移到DirA上时就可以得到这个item了,
但是运行之后发现,itemEntered信号只有在dropEvent后才会被触发,drag期间并没有触发,大家帮我想想解决方法是什么
谢谢啦
treewidget->setMouseTracking(true)
这个我已经设了,没有
This signal is emitted when the mouse cursor enters an item over the specified column. QTreeWidget mouse tracking needs to be enabled for this feature to work.
你把treewidget->setMouseTracking(true)试下本回答被提问者采纳 参考技术B 能够把代码贴出来,分享下吗?
以上是关于qt qtreewidget自动展开失效的主要内容,如果未能解决你的问题,请参考以下文章