1、什么是事件
事件就是某个事情的起因、经过、结果三部分组成一个事件。在QT中,将事件封装成一个类,当我们想要使用一个特定事件的时候,我们只需要把该类实例化成对象,之后使用该对象就是使用该对应的事件。比如QT中常见的类有:鼠标事件(QMouseEvent)、键盘事件(QKeyEvent)、定时器事件(QTimer)、以及图形事件。
2、事件的流程
首先要产生事件、事件的派送、事件的分发、事件的处理,一共4个步骤。打个比方:“你拿100元分给你朋友们买零食吃”事件,产生事件(你拿100元分给你朋友们买零食吃),事件的派送(你需要把钱送到你朋友们那里去)、事件的分发(送到朋友那里之后,你就给每个朋友分一点)、事件的处理(最后你朋友们就拿着你分到的钱去买零食吃),这个列子可能举得不是很好,如果有更好的例子去理解,请发在评论区,我定向大佬们学习。QT的所有事件都是统归QEvent类管理。
(1)、事件的产生:在QT中可以内部产生事件(定事件的时器事件),外部产生的事件(鼠标事件、键盘事件、拖动事件等等)。
(2)、事件的派送:事件的派送都是通过QAPPlication类对事件进行派送的,调用该类里的exec()(模态显示)函数来进入事件的循环状态(监听事件)。
(3)、事件的分发:QT提供一个QEvent类来进行事件的分发,使用QEve