QContextMenuEvent Class

The QContextMenuEvent class contains parameters that describe a context menu event. More...

Header: #include <QContextMenuEvent>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Inherits: QInputEvent

Public Types

enum Reason { Mouse, Keyboard, Other }

Public Functions

QContextMenuEvent(QContextMenuEvent::Reason reason, const QPoint &pos)
QContextMenuEvent(QContextMenuEvent::Reason reason, const QPoint &pos, const QPoint &globalPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier)
const QPoint &globalPos() const
int globalX() const
int globalY() const
const QPoint &pos() const
QContextMenuEvent::Reason reason() const
int x() const
int y() const

Detailed Description

Context menu events are sent to widgets when a user performs an action associated with opening a context menu. The actions required to open context menus vary between platforms; for example, on Windows, pressing the menu button or clicking the right mouse button will cause this event to be sent.

When this event occurs it is customary to show a QMenu with a context menu, if this is relevant to the context.

Member Type Documentation

enum QContextMenuEvent::Reason

This enum describes the reason why the event was sent.

ConstantValueDescription
QContextMenuEvent::Mouse0The mouse caused the event to be sent. Normally this means the right mouse button was clicked, but this is platform dependent.
QContextMenuEvent::Keyboard1The keyboard caused this event to be sent. On Windows, this means the menu button was pressed.
QContextMenuEvent::Other2The event was sent by some other means (i.e. not by the mouse or keyboard).

Member Function Documentation

QContextMenuEvent::QContextMenuEvent(QContextMenuEvent::Reason reason, const QPoint &pos)

Constructs a context menu event object with the accept parameter flag set to false.

The reason parameter must be QContextMenuEvent::Mouse or QContextMenuEvent::Keyboard.

The pos parameter specifies the mouse position relative to the receiving widget.

The globalPos() is initialized to QCursor::pos(), which may not be appropriate. Use the other constructor to specify the global position explicitly.

QContextMenuEvent::QContextMenuEvent(QContextMenuEvent::Reason reason, const QPoint &pos, const QPoint &globalPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier)

Constructs a context menu event object with the accept parameter flag set to false.

The reason parameter must be QContextMenuEvent::Mouse or QContextMenuEvent::Keyboard.

The pos parameter specifies the mouse position relative to the receiving widget. globalPos is the mouse position in absolute coordinates. The modifiers holds the keyboard modifiers.

const QPoint &QContextMenuEvent::globalPos() const

Returns the global position of the mouse pointer at the time of the event.

See also x(), y(), and pos().

int QContextMenuEvent::globalX() const

Returns the global x position of the mouse pointer at the time of the event.

See also globalY() and globalPos().

int QContextMenuEvent::globalY() const

Returns the global y position of the mouse pointer at the time of the event.

See also globalX() and globalPos().

const QPoint &QContextMenuEvent::pos() const

Returns the position of the mouse pointer relative to the widget that received the event.

See also x(), y(), and globalPos().

QContextMenuEvent::Reason QContextMenuEvent::reason() const

Returns the reason for this context event.

int QContextMenuEvent::x() const

Returns the x position of the mouse pointer, relative to the widget that received the event.

See also y() and pos().

int QContextMenuEvent::y() const

Returns the y position of the mouse pointer, relative to the widget that received the event.

See also x() and pos().