开发者

Passing event from QGraphicsScene to QGraphicsItem in C++ with Qt

I have a base class extending QGraphicsScene...

class BaseScene : public QGraphicsScene

in t开发者_运维技巧hat class is the protected event...

void BaseScene::mousePressEvent(QGraphicsSceneMouseEvent *mouseEvent)

There are some user clicks where I need to pass the event on to the QGraphicsItem inside the QGraphicsScene, as the QGraphicsItem also contains a 'mousePressEvent'.

How can I propergate down events of my choosing from the QGprahicsScene to a specific QGraphicsItem?.

Thank you.


In your reimplemented mousePressEvent() add:

QGraphicsScene::mousePressEvent(mouseEvent);

This will call the default implementation : "The default implementation depends on the state of the scene. If there is a mouse grabber item, then the event is sent to the mouse grabber. Otherwise, it is forwarded to the topmost item that accepts mouse events at the scene position from the event, and that item promptly becomes the mouse grabber item."

Hope this helps

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜