本页内容

QGraphicsSceneContextMenuEvent Class

QGraphicsSceneContextMenuEvent 类在图形视图框架中提供了上下文菜单事件。更多内容...

头文件: #include <QGraphicsSceneContextMenuEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
继承自: QGraphicsSceneEvent

公共类型

enum Reason { Mouse, Keyboard, Other }

公共函数

virtual ~QGraphicsSceneContextMenuEvent()
Qt::KeyboardModifiers modifiers() const
QPointF pos() const
QGraphicsSceneContextMenuEvent::Reason reason() const
QPointF scenePos() const
QPoint screenPos() const

详细说明

QGraphicsView 接收到的QContextMenuEvent 会被转换为 QGraphicsSceneContextMenuEvent。QContextMenuEvent::globalPos() 会被转换为项目、场景和屏幕坐标(pos()、scenePos() 和screenPos())。

另请参阅 QGraphicsSceneMouseEvent 、QGraphicsSceneWheelEvent 以及QContextMenuEvent 。

成员类型文档

enum QGraphicsSceneContextMenuEvent::Reason

此枚举描述了上下文事件被发送的原因。

常量值描述
QGraphicsSceneContextMenuEvent::Mouse0鼠标触发了该事件的发送。在大多数平台上,这意味着右键被点击了。
QGraphicsSceneContextMenuEvent::Keyboard1该事件由键盘触发。在 Windows 和 macOS 上,这意味着菜单键被按下。
QGraphicsSceneContextMenuEvent::Other2该事件是由其他方式触发的(即非通过鼠标或键盘)。

成员函数文档

[virtual noexcept] QGraphicsSceneContextMenuEvent::~QGraphicsSceneContextMenuEvent()

销毁该事件。

Qt::KeyboardModifiers QGraphicsSceneContextMenuEvent::modifiers() const

返回请求上下文菜单时正在使用的键盘修饰键。

QPointF QGraphicsSceneContextMenuEvent::pos() const

返回请求上下文菜单时,鼠标光标在项目坐标系中的位置。

另请参阅 scenePos() 和screenPos()。

QGraphicsSceneContextMenuEvent::Reason QGraphicsSceneContextMenuEvent::reason() const

返回上下文菜单事件的原因。

另请参阅 QGraphicsSceneContextMenuEvent::Reason 。

QPointF QGraphicsSceneContextMenuEvent::scenePos() const

返回请求上下文菜单时鼠标光标在场景坐标系中的位置。

另请参阅 pos() 和screenPos()。

QPoint QGraphicsSceneContextMenuEvent::screenPos() const

返回请求上下文菜单时鼠标光标在屏幕坐标系中的位置。

另请参阅 pos() 和scenePos()。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.