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

目录

使用

按下事件

释放事件

双击事件

移动事件

滚轮事件


使用

按下事件

实现下面的功能

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

添加函数

提升函数

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

重写该函数

定义

重写

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

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

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

释放事件

在帮助中找到原型

使用

双击事件

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

使用

注意

移动事件

这个事件比较特殊

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

鼠标追踪需要声明

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

滚轮事件

原型

鼠标滚动

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

相关推荐
似水明俊德5 小时前
02-C#.Net-反射-面试题
开发语言·面试·职场和发展·c#·.net
Thera7775 小时前
C++ 高性能时间轮定时器:从单例设计到 Linux timerfd 深度优化
linux·开发语言·c++
炘爚6 小时前
C语言(文件操作)
c语言·开发语言
阿蒙Amon6 小时前
C#常用类库-详解SerialPort
开发语言·c#
凸头7 小时前
CompletableFuture 与 Future 对比与实战示例
java·开发语言
wuqingshun3141597 小时前
线程安全需要保证几个基本特征
java·开发语言·jvm
Moksha2627 小时前
5G、VoNR基本概念
开发语言·5g·php
jzlhll1237 小时前
kotlin Flow first() last()总结
开发语言·前端·kotlin
W.D.小糊涂7 小时前
gpu服务器安装windows+ubuntu24.04双系统
c语言·开发语言·数据库
用头发抵命7 小时前
Vue 3 中优雅地集成 Video.js 播放器:从组件封装到功能定制
开发语言·javascript·ecmascript