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

目录

使用

按下事件

释放事件

双击事件

移动事件

滚轮事件


使用

按下事件

实现下面的功能

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

添加函数

提升函数

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

重写该函数

定义

重写

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

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

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

释放事件

在帮助中找到原型

使用

双击事件

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

使用

注意

移动事件

这个事件比较特殊

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

鼠标追踪需要声明

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

滚轮事件

原型

鼠标滚动

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

相关推荐
十年Java程序媛8 分钟前
Java 面试常问 this、super:构造方法调用顺序避坑
java·开发语言·spring boot·面试·个人开发
yuniko-n27 分钟前
【JUC】内存屏障
java·开发语言
Linux运维技术栈30 分钟前
近期 PHP 高危安全风险排查与多环境升级实操
开发语言·安全·php
Fnetlink11 小时前
Fnet 云网安 261023
运维·开发语言·网络·人工智能·安全·web安全·php
ESDWAN1 小时前
SD-WAN 主备切换为什么仍会断网?从检测、切换到会话恢复分析
运维·开发语言·网络·php
jimy11 小时前
lvalue、xvalue、prvalue(二):引用是哪一类?
开发语言·c++·1024程序员节
cxyxixiy1 小时前
数智码力:数据核对不用人工比对,Python 快速完成多表格差异校验
开发语言·python·学习
一个风轻云淡1 小时前
从 int $0x80 到 iret:用 gdb 把 getpid 走一遍
linux·c语言·开发语言·汇编
杜 硕1 小时前
从零开始的C++生活——第三讲
开发语言·c++·生活
tianbin9111 小时前
批处理与微调辅助场景:Claude 中转并发、链路缓存与压测对比
java·开发语言·缓存