QGraphicsSceneEvent Class

The QGraphicsSceneEvent class provides a base class for all graphics view related events. More...

Public Functions

virtual ~QGraphicsSceneEvent()
QWidget * widget() const
  • 7 public functions inherited from QEvent

Additional Inherited Members

  • 1 property inherited from QEvent
  • 1 public variable inherited from QEvent
  • 1 static public member inherited from QEvent
  • 2 protected variables inherited from QEvent

Detailed Description

The QGraphicsSceneEvent class provides a base class for all graphics view related events.

When a QGraphicsView receives Qt mouse, keyboard, and drag and drop events (QMouseEvent, QKeyEvent, QDragEvent, etc.), it translates them into instances of QGraphicsSceneEvent subclasses and forwards them to the QGraphicsScene it displays. The scene then forwards the events to the relevant items.

For example, when a QGraphicsView receives a QMouseEvent of type MousePress as a response to a user click, the view sends a QGraphicsSceneMouseEvent of type GraphicsSceneMousePress to the underlying QGraphicsScene through its mousePressEvent() function. The default QGraphicsScene::mousePressEvent() implementation determines which item was clicked and forwards the event to QGraphicsItem::mousePressEvent().

Subclasses such as QGraphicsSceneMouseEvent and QGraphicsSceneContextMenuEvent provide the coordinates from the original QEvent in screen, scene, and item coordinates (see screenPos(), scenePos(), and pos()). The item coordinates are set by the QGraphicsScene before it forwards the event to the event to a QGraphicsItem. The mouse events also add the possibility to retrieve the coordinates from the last event received by the view (see lastScreenPos(), lastScenePos(), and lastPos()).

See also QEvent.

Member Function Documentation

[virtual] QGraphicsSceneEvent::~QGraphicsSceneEvent()

Destroys the event.

QWidget *QGraphicsSceneEvent::widget() const

Returns the widget where the event originated, or 0 if the event originates from another application.

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
create apps
create games
cross platform
native performance
3rd party services
game network
level editor
easiest to learn
biggest time saving
best support