我使用 QGraphicsView
创建一种电路编辑器,其中包含元素和连接器。应该可以用电线连接这些连接器。
但是,我遇到了一个问题,当我从一个连接器拖动到另一个连接器时,Qt 捕获鼠标,其他连接器停止接收 hoverEnterEvent
。顺便说一句,悬停连接器会调整大小,因此更容易点击它们。
再一次,拖动时是否可以不捕获鼠标?
我在 Windows 上使用过 Qt 4.5。
根据要求,这里有一些来源: http://pastebin.com/m422b9495
最佳答案
在拖动操作期间更改鼠标悬停行为有点典型。通常响应鼠标移动的小部件在拖动过程中往往不会响应,除非它们可以接收相关的拖放。所以通常的悬停事件被抑制了。 (检查一个小部件是否接受一些掉落是不够的,因为问题是小部件是否可以接受这个掉落。)除了悬停事件之外,尝试使用拖动的进入和离开事件来调整连接器的大小。
关于c++ - Qt:mouseMoveEvent并干扰子对象的hoverEnterEvent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/909928/