Qt-系统处理鼠标相关事件(57)

目录

使用

按下事件

释放事件

双击事件

移动事件

滚轮事件


使用

按下事件

实现下面的功能

鼠标在此处点击,就可以获取鼠标位置

添加函数

提升函数

手册中找到这个函数的原型

重写该函数

定义

重写

这里有一个细节需要注意,因为这里的标准点击都能触发,比如左键、右键甚至侧键都能触发,滚轮的点击也是可以触发的,滚动不行,还有现在的一些自定义的组合键也是不能的,也就是是标准的鼠标点击都是能够触发 mousePressEvent 这个信号的

我们可以进行判断,来区别左击还是右击

关于其他的可以触发的,可以查考原文中的枚举

释放事件

在帮助中找到原型

使用

双击事件

找到原型,注意字面意思,会触发鼠标的点击和释放事件

使用

注意

移动事件

这个事件比较特殊

假如直接写的话是不行的,因为鼠标移动会短时间内产生大量的事件,这会导致系统反应不过来,基于这一点,Qt是不允许这个函数的运行的,只要在声明中强调需要执行,Qt才会执行该函数

鼠标追踪需要声明

如下声明之后就可以正常使用啦,但是假如你快速移动鼠标的话,还是会卡顿的哦,所以使用这个函数的时候需要慎重

滚轮事件

原型

鼠标滚动

显示本人的鼠标是滚动一格是 120 个像素,向上为正,向下为负

相关推荐
辞旧 lekkk3 小时前
【Redis初阶】常见数据类型
开发语言·数据库·c++·redis·学习·缓存·bootstrap
帅次4 小时前
Kotlin 与 Java 互操作:混合工程里的平台类型与 API 边界
java·开发语言·kotlin·suspend·nullable
dtq04246 小时前
C语言-结构体详解
c语言·开发语言·学习
梅雅达编程笔记6 小时前
编程启蒙|Scratch 转 Python 系列第9天:字典/哈希表积木双向对照(AI大模型参数配置表实战)
开发语言·人工智能·python·numpy·pandas
持力行6 小时前
C++与Java变量声明、定义及内存分配的核心区别
java·开发语言·c++
jinyishu_7 小时前
C++ 继承全解:从基础到高级特性
开发语言·c++
蜡台9 小时前
通过Gradle脚本声明更改Java变量
android·java·开发语言·python·kotlin·gradle·groovy
小喻同学i9 小时前
std::thread函数参数传递
开发语言·c++
Ulyanov10 小时前
Python实现6-DOF刚体仿真器(下)——环境扰动与控制闭环
开发语言·python·算法·系统仿真·雷达电子对抗·导引头
分布式存储与RustFS10 小时前
RustFS Beta.10 性能解读:PUT 全面反超 MinIO,Rust 重写对象存储成了?
开发语言·后端·rust