2012-12-01 101 views
0

我有以下mousePressEvent,它工作正常,但只有双击鼠标时,我希望它只在单击鼠标按钮时才能工作。Custom QGraphicsItem mousePressEvent for single click works only only when both click

void MapNode::mousePressEvent(QGraphicsSceneMouseEvent *event) 
{ 
    isClicked *= -1; 
    QGraphicsItem::mousePressEvent(event); 
    update(); 
} 

感谢

+0

因此,您已经在方法中加入了调试输出或断点,并确认仅在双击时调用它? – cmannett85

+0

是的,我确实在方法中加入了断点,并且只在双击时调用它:S 但我注意到了一些事情,我有一个定制的QGraphicsView(它包含所有定制的QGraphicsItem的场景),它也调用mousePressEvent,而自定义QGraphicsView mousePressEvent只需单击即可使用。 – GoldenAxe

回答

3

我有一个mousePressEvent在我的自定义的QGraphicsItem,这是一个自定义的QGraphicsView,只需要定制的QGraphicsView mousePressEvent里面添加以下代码行的方法开始的父:QGraphicsView::mousePressEvent(event);,所以现在单击鼠标可以正常工作,可能父母上的事件阻止了孩子上的事件。