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

目录

使用

按下事件

释放事件

双击事件

移动事件

滚轮事件


使用

按下事件

实现下面的功能

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

添加函数

提升函数

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

重写该函数

定义

重写

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

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

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

释放事件

在帮助中找到原型

使用

双击事件

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

使用

注意

移动事件

这个事件比较特殊

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

鼠标追踪需要声明

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

滚轮事件

原型

鼠标滚动

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

相关推荐
aramae3 小时前
MySQL内置函数(7)
开发语言·笔记·后端·mysql·其他
码行山野赴时序归途6 小时前
链表家族收官篇:循环链表
c语言·开发语言·数据结构·链表
景熙55236 小时前
单体项目编写思路和落地形式
java·开发语言
计算机毕设定制辅导-无忧学长7 小时前
《基于SpringBoot的未成年人健康知识科普平台的设计与实现》
java·开发语言·vue.js·spring boot·未成年人健康知识科普平台
Ivanqhz7 小时前
Ping-Pong 双缓冲
开发语言·人工智能·python·深度学习·mlir
m0_734571767 小时前
深入理解C++ RAII
开发语言·c++
泡海椒7 小时前
jquick-pdf 表格实战:动态数据 PDF 报表生成
java·开发语言·pdf
aramae7 小时前
模拟实现memset()(C语言)
c语言·开发语言·后端
wuyk5558 小时前
【Socket 进阶之路】第 7 章 IO 多路复用 select & poll 完整实战|多 fd 监听、超时等待、优缺点横向对比
服务器·开发语言·网络·数据库·物联网
船厂电气自动化ai大模型8 小时前
AI大模型与数学|第81天 课程:正交向量、正交基、格拉姆‑施密特(Gram‑Schmidt)正交化
开发语言·数据结构·人工智能·线性代数·机器学习