我对 QTreeWidget 进行了子类化,将其dragDropMode设置为InternalMove并使用自定义项目填充它,其中一些可以拖动,其他接受 drop。用户可以按预期在树周围移动项目。但是我需要被通知项目顺序的变化并做出适当的反应。不幸的是,没有与我可以连接到的树内项目的移动相关的信号。
我尝试获取 QTreeWidget 的底层model()的句柄,然后连接到它的rowsMoved信号,但它似乎没有在内部移动期间发出。
我重新实现了 QTreeWidget 的dropEvent(),但无法确定那里的目标行索引。
显然,内部移动根本不会调用dropMimeData()事件。
我可以尝试任何其他方法吗?谢谢。