一 问题
今天想自定定义一个QMouseEvent变量,变量的的初始化参数有Qt::MouseButtons,这是个啥?查看类型为QFlags<Qt::MouseButton>。
二 Qt::MouseButton
Qt::MouseButton 是 Qt 框架中定义的一个枚举类型(enum),用于表示鼠标事件中的物理按钮。它是 Qt 事件处理系统的核心部分,常用于处理鼠标点击、拖拽等交互操作。
以下是 Qt::MouseButton 的主要枚举值
枚举值 说明
Qt::NoButton 无按键被按下(通常用于鼠标移动事件)
Qt::LeftButton 鼠标左键
Qt::RightButton 鼠标右键
Qt::MiddleButton 鼠标中键(滚轮按键)
Qt::BackButton 鼠标上的“后退”侧键(常见于高级鼠标)
Qt::ForwardButton 鼠标上的“前进”侧键
Qt::TaskButton 系统任务键(部分平台支持)
三 Qt::MouseButtons
1 概述
Qt::MouseButtons 是 QFlags<Qt::MouseButton> 的类型别名,支持按位或(|)操作组合多个枚举值。
例如:Qt::LeftButton | Qt::RightButton 表示同时按下左键和右键。
2 使用场景
1)buttons()
返回事件发生时所有已按下的按钮组合(Qt::MouseButtons 类型)。