2012-12-01 45 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);,所以現在單擊鼠標可以正常工作,可能父母上的事件阻止了孩子上的事件。