Qt 子控件在设置setAcceptDrops后拖入显示禁止图标解决方法

Posted summerio

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt 子控件在设置setAcceptDrops后拖入显示禁止图标解决方法相关的知识,希望对你有一定的参考价值。

原因可能是父控件也设置了可拖拽熟悉

 

解决方法:在子控件中重写

dragMoveEvent事件
    def dragMoveEvent(self, e):
        item = e.source()
        if None is item:
            e.accept()
        elif item.isAncestorOf(self):
            e.ignore()

 

参考:https://stackoverflow.com/questions/61616177/qt-prevent-drag-and-drop-on-child-widgets-and-show-forbidden-cursor

以上是关于Qt 子控件在设置setAcceptDrops后拖入显示禁止图标解决方法的主要内容,如果未能解决你的问题,请参考以下文章

[Python自学] PyQT5-控件拖拽剪切板

当 setAcceptDrops 设置设置为 True 时,如何检测 QListWidet 内部移动信号

Qt中添加自定义位置Widget

为啥在Qt中用qss对同类的控件有不同的效果

qt 布局管理按钮控件间有空隙?

Qt窗口透明