我想通过鼠标单击选择QGraphicsView
中的位置和项目,然后在此位置/项目将项目添加到连接的视图中。我是否需要实现自己的QGraphicsView
子类,还是有一个较短的解决方案,例如有信号/插槽?
最佳答案
有几种方法可以做到:
重新实现mousePressEvent(QMouseEvent*)
(因此,您需要实现QGraphicsView
的子类),
为installEventFilter(QObject *)
调用QGraphicsView
并实现bool eventFilter(QObject *, QEvent *)
以捕获所有事件(并且仅在此函数内处理QEvent::MouseButtonPress
)。在这种情况下,您无需实现QGraphicsView
的子类。
另请参见:Click event for QGraphicsView Qt和How to draw a point (on mouseclick) on a QGraphicsScene
关于c++ - 如何通过单击鼠标来选择位置并在QGraphicsView中添加项目?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32202371/