返回介绍

QContextMenuEvent Class

发布于 2019-10-04 14:59:04 字数 6680 浏览 1004 评论 0 收藏 0

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

#include <qevent.h>

Inherits QEvent.

List of all member functions.

Public Members

  • enum Reason { Mouse, Keyboard, Other }
  • QContextMenuEvent ( Reasonreason, constQPoint&pos, constQPoint&globalPos, intstate )
  • QContextMenuEvent ( Reasonreason, constQPoint&pos, intstate )
  • int x () const
  • int y () const
  • int globalX () const
  • int globalY () const
  • const QPoint & pos () const
  • const QPoint & globalPos () const
  • ButtonState state () const
  • bool isAccepted () const
  • bool isConsumed () const
  • void consume ()
  • void accept ()
  • void ignore ()
  • Reason reason () const

Detailed Description

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

Context menu events are sent to widgets when a user triggers a context menu. What triggers this is platform dependent. For example, on Windows, pressing the menu button or releasing the right mouse button will cause this event to be sent.

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

Context menu events contain a special accept flag that indicates whether the receiver accepted the event. If the event handler does not accept the event, then whatever triggered the event will be handled as a regular input event if possible.

See also QPopupMenu and Event Classes.


Member Type Documentation

QContextMenuEvent::Reason

This enum describes the reason the ContextMenuEvent was sent. The values are:

  • QContextMenuEvent::Mouse - The mouse caused the event to be sent. Normally this means the right mouse button was clicked, but this is platform specific.
  • QContextMenuEvent::Keyboard - The keyboard caused this event to be sent. On Windows this means the menu button was pressed.
  • QContextMenuEvent::Other - The event was sent by some other means (i.e. not by the mouse or keyboard).

Member Function Documentation

QContextMenuEvent::QContextMenuEvent ( Reasonreason, constQPoint&pos, constQPoint&globalPos, intstate )

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. state is the ButtonState at the time of the event.

QContextMenuEvent::QContextMenuEvent ( Reasonreason, constQPoint&pos, intstate )

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. state is the ButtonState at the time of the event.

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

void QContextMenuEvent::accept ()

Sets the accept flag of the context event object.

Setting the accept flag indicates that the receiver of this event has processed the event. Processing the event means you did something with it and it will be implicitly consumed.

The accept flag is not set by default.

See also ignore() and consume().

void QContextMenuEvent::consume ()

Sets the consume flag of the context event object.

Setting the consume flag indicates that the receiver of this event does not want the event to be propagated further (i.e. not sent to parent classes.)

The consumed flag is not set by default.

See also ignore() and accept().

constQPoint& 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().

void QContextMenuEvent::ignore ()

Clears the accept flag of the context event object.

Clearing the accept flag indicates that the receiver of this event does not need to show a context menu. This will implicitly remove the consumed flag as well.

The accept flag is not set by default.

See also accept() and consume().

bool QContextMenuEvent::isAccepted () const

Returns TRUE if the receiver has processed the event; otherwise returns FALSE.

See also accept(), ignore() and consume().

bool QContextMenuEvent::isConsumed () const

Returns TRUE (which stops propagation of the event) if the receiver has blocked the event; otherwise returns FALSE.

See also accept(), ignore() and consume().

constQPoint& QContextMenuEvent::pos () const

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

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

Reason QContextMenuEvent::reason () const

Returns the reason for this context event.

ButtonState QContextMenuEvent::state () const

Returns the button state (a combination of mouse buttons and keyboard modifiers), i.e. what buttons and keys were being pressed immediately before the event was generated.

The returned value is LeftButton, RightButton, MidButton, ShiftButton, ControlButton and AltButton OR'ed together.

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().

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文