如何通过鼠标单击在 QGraphicsView 中选择位置并添加项目?
Posted
技术标签:
【中文标题】如何通过鼠标单击在 QGraphicsView 中选择位置并添加项目?【英文标题】:How to select a position and add an item in a QGraphicsView by mouse click? 【发布时间】:2015-08-25 11:05:48 【问题描述】:我想通过鼠标单击在QGraphicsView
中选择位置和项目,并将项目添加到此位置/项目的连接视图。我是否需要实现我自己的QGraphicsView
子类或者是否有更短的解决方案,例如带信号/槽?
【问题讨论】:
【参考方案1】:有几种方法可以做到:
重新实现mousePressEvent(QMouseEvent*)
(所以,你需要实现QGraphicsView
的子类),
为QGraphicsView
调用installEventFilter(QObject *)
并实现bool eventFilter(QObject *, QEvent *)
以捕获所有事件(并在此函数内仅处理QEvent::MouseButtonPress
)。在这种情况下,您不需要实现QGraphicsView
的子类。
另请参阅:Click event for QGraphicsView Qt 和 How to draw a point (on mouseclick) on a QGraphicsScene
【讨论】:
以上是关于如何通过鼠标单击在 QGraphicsView 中选择位置并添加项目?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 QMainWindow 鼠标点击位置传递给 QGraphicsView
在自定义 QGraphicsView 中移动 QGraphicsItem 问题