Qt:21.事件(事件的介绍、事件的基类、用户输入事件、窗口和界面事件、其他系统事件、事件处理的思路)

目录

1.事件的介绍:

2.事件的基类:

3.派生类------用户输入事件:

4.派生类------窗口和界面事件:

5.派生类------其他系统事件:

6.事件处理的思路:


1.事件的介绍:

  • Qt 的事件(Event)是表示应用程序中的各种动作或消息的对象。负责处理用户交互、系统通知以及应用程序内的各种状态变化。
  • 事件可以由用户动作(如鼠标点击、键盘输入)引发,也可以由系统或应用程序自身产生。
  • 在Qt中,槽函数就是对事件的进一步封装,但是槽函数封装的信号有限,不能完全对应可能产生的情况。此时就需要重写事件处理函数。

2.事件的基类:

  • QEvent 是所有事件的基类,定义了事件的类型和基本属性。常见的事件类型由 QEvent::Type 枚举表示。

3.派生类------用户输入事件:

|-------------|------------------------------------------------------------------------------------------------------------------------------------------|
| QMouseEvent | * 鼠标事件,如按下、释放、移动、双击。 * 常用事件类型: * QEvent::MouseButtonPress * QEvent::MouseButtonRelease * QEvent::MouseMove * QEvent::MouseButtonDblClick |
| QKeyEvent | * 键盘事件,如按下和释放按键。 * 常用事件类型: * QEvent::KeyPress * QEvent::KeyRelease |
| QWheelEvent | * 鼠标滚轮事件。 * 常用事件类型: * QEvent::Wheel |

4.派生类------窗口和界面事件:

5.派生类------其他系统事件:

6.事件处理的思路:

  • 一般情况,是让类重写事件函数。
  • 通过多态,创建子类继承Qt已有的类,在子类中重写父类的事件处理函数。
相关推荐
岁忧26 分钟前
macOS配置 GO语言环境
开发语言·macos·golang
朝朝又沐沐2 小时前
算法竞赛阶段二-数据结构(36)数据结构双向链表模拟实现
开发语言·数据结构·c++·算法·链表
魔尔助理顾问2 小时前
系统整理Python的循环语句和常用方法
开发语言·后端·python
Ares-Wang2 小时前
JavaScript》》JS》 Var、Let、Const 大总结
开发语言·前端·javascript
遇见尚硅谷3 小时前
C语言:*p++与p++有何区别
c语言·开发语言·笔记·学习·算法
SkyrimCitadelValinor3 小时前
c#中让图片显示清晰
开发语言·c#
艾莉丝努力练剑3 小时前
【数据结构与算法】数据结构初阶:详解排序(二)——交换排序中的快速排序
c语言·开发语言·数据结构·学习·算法·链表·排序算法
狐小粟同学3 小时前
JavaEE--3.多线程
java·开发语言·java-ee
颜颜yan_3 小时前
Python面向对象编程详解:从零开始掌握类的声明与使用
开发语言·redis·python
李永奉4 小时前
C语言-流程控制语句:for循环语句、while和do…while循环语句;
c语言·开发语言·c++·算法