Qt 未调用QGraphicsTextItem dropEvent

Qt 未调用QGraphicsTextItem dropEvent,qt,qt4,Qt,Qt4,我有一个子类QGraphicsTextItem类作为标签,它有一个不同子类QGraphicsTextItem的列表,这些子类作为与另一个类关联的项目符号/行。我已经为label类实现了mouseMoveEvent和dropEvents,它们工作得很好,基本上它只是交换标签和与它们相关的所有项目符号/行。但我也想实现这个相同的功能,只是为了交换一个单独的项目符号 所以我继续为bullet类实现了dropEvent和mouseMoveEvent。当我拖动bullet类时,我会看到mouseMoveE

我有一个子类QGraphicsTextItem类作为标签,它有一个不同子类QGraphicsTextItem的列表,这些子类作为与另一个类关联的项目符号/行。我已经为label类实现了mouseMoveEvent和dropEvents,它们工作得很好,基本上它只是交换标签和与它们相关的所有项目符号/行。但我也想实现这个相同的功能,只是为了交换一个单独的项目符号

所以我继续为bullet类实现了dropEvent和mouseMoveEvent。当我拖动bullet类时,我会看到mouseMoveEvent触发,但当我将它放到另一个bullet类时,不会调用dropEvent。我可以把它放到label类中,注意label类的dropEvent被调用。在这种情况下,我不想做任何事情,但是当我把一个项目符号放到一个项目符号上时,不会调用dropEvent


我已经确保在这两个类中都调用了setAcceptDropstrue,并且itemsmovable的标志都是可更改的。

请发布一个自包含的测试用例。到目前为止,对于任何帮助您的人来说,他们需要自己编写这样的测试用例。我想我已经明白了发生了什么。我的项目符号QGraphicsTextItem的大小为0。如果它是一个小部件,我可以使用setMinimumSize,但是图形项目没有这个功能,所以我需要找出一种不同的方法来强制大小,或者可能是在场景中渲染的边框,以便它足够大,可以接受拖放。