QGraphicsItem 响应鼠标事件

时间:2022-03-03 23:23:56
在QGraphicsItem中如何捕获鼠标事件


想在Scene中可以进行鼠标事件的捕获  但是无法再Item中进行鼠标点击的位置的获取

4 个解决方案

#1


 1.可以再 Scene中使用事件过滤器 ventFilter ( QObject * watched, QEvent * event )
 2.在 Item的事件处理函数中 return event->accept();

#2


楼上的事件过滤器少了个 e。事件本身是从场景开始派发的,所有item的事件多会先进入场景,场景不进行处理才会进入item,否则item是接收不到事件的。

#3


引用 2 楼  的回复:
楼上的事件过滤器少了个 e。事件本身是从场景开始派发的,所有item的事件多会先进入场景,场景不进行处理才会进入item,否则item是接收不到事件的。

谢谢指正 

在场景的事件过滤器 return false 就会继续处理这个事件了.

#4


多谢大家  问题解决了   

#1


 1.可以再 Scene中使用事件过滤器 ventFilter ( QObject * watched, QEvent * event )
 2.在 Item的事件处理函数中 return event->accept();

#2


楼上的事件过滤器少了个 e。事件本身是从场景开始派发的,所有item的事件多会先进入场景,场景不进行处理才会进入item,否则item是接收不到事件的。

#3


引用 2 楼  的回复:
楼上的事件过滤器少了个 e。事件本身是从场景开始派发的,所有item的事件多会先进入场景,场景不进行处理才会进入item,否则item是接收不到事件的。

谢谢指正 

在场景的事件过滤器 return false 就会继续处理这个事件了.

#4


多谢大家  问题解决了