admin管理员组文章数量:1037775
【QT】事件系统入门——QEvent 基础与示例
一、事件介绍
事件是 应用程序内部或者外部产生的事情或者动作的统称
- 在 Qt 中使用一个对象来表示一个事件。所有的 Qt 事件均继承于抽象类 QEvent。
- 事件是由系统或者 Qt 平台本身在不同的时刻发出的。
- 当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。
- 一些事件是在用户操作时发出,如键盘事件、鼠标事件等,另一些事件则是由系统本身自动发出,如定时器事件。
事件本身是 操作系统提供的 机制,Qt 也同样把操作系统事件机制进行了封装拿到了 Qt 中,但由于 事件 对应的代码编写起来不方便,因此 Qt 对于事件机制 又进行了进一步的 封装,就得到了 信号槽
常见的 QT 事件如下:
不同场景下,要关注的点不一样。这些事件的子类中就会包含一些对应的不同属性。
常见事件描述:
从图片中提取的文字信息如下表所示:
事件名称 | 描述 |
---|---|
鼠标事件 | 鼠标左键、鼠标右键、鼠标滚轮,鼠标的移动,鼠标按键的按下和松开 |
键盘事件 | 按键类型、按键按下、按键松开 |
定时器事件 | 定时时间到达 |
进入离开事件 | 鼠标的进入和离开 |
滚轮事件 | 鼠标滚轮滚动 |
绘屏事件 | 重绘屏幕的某些部分 |
显示隐藏事件 | 窗口的显示和隐藏 |
移动事件 | 窗口位置的变化 |
窗口事件 | 是否为当前窗口 |
大小改变事件 | 窗口大小改变 |
焦点事件 | 键盘焦点移动 |
拖拽事件 | 用鼠标进行拖拽 |
二、事件的处理
事件处理一般常用的方法为:重写相关的 Event
函数。
在 Qt 中,几乎所有的 Event 函数都是虚函数,所以可以重新实现。
比如:在实现鼠标的进入和离开事件时,直接重新实现 enterEvent()
和 leaveEvent()
即可。enterEvent()
和 leaveEvent()
函数原型如下:
【QT】事件系统入门——QEvent 基础与示例
一、事件介绍
事件是 应用程序内部或者外部产生的事情或者动作的统称
- 在 Qt 中使用一个对象来表示一个事件。所有的 Qt 事件均继承于抽象类 QEvent。
- 事件是由系统或者 Qt 平台本身在不同的时刻发出的。
- 当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。
- 一些事件是在用户操作时发出,如键盘事件、鼠标事件等,另一些事件则是由系统本身自动发出,如定时器事件。
事件本身是 操作系统提供的 机制,Qt 也同样把操作系统事件机制进行了封装拿到了 Qt 中,但由于 事件 对应的代码编写起来不方便,因此 Qt 对于事件机制 又进行了进一步的 封装,就得到了 信号槽
常见的 QT 事件如下:
不同场景下,要关注的点不一样。这些事件的子类中就会包含一些对应的不同属性。
常见事件描述:
从图片中提取的文字信息如下表所示:
事件名称 | 描述 |
---|---|
鼠标事件 | 鼠标左键、鼠标右键、鼠标滚轮,鼠标的移动,鼠标按键的按下和松开 |
键盘事件 | 按键类型、按键按下、按键松开 |
定时器事件 | 定时时间到达 |
进入离开事件 | 鼠标的进入和离开 |
滚轮事件 | 鼠标滚轮滚动 |
绘屏事件 | 重绘屏幕的某些部分 |
显示隐藏事件 | 窗口的显示和隐藏 |
移动事件 | 窗口位置的变化 |
窗口事件 | 是否为当前窗口 |
大小改变事件 | 窗口大小改变 |
焦点事件 | 键盘焦点移动 |
拖拽事件 | 用鼠标进行拖拽 |
二、事件的处理
事件处理一般常用的方法为:重写相关的 Event
函数。
在 Qt 中,几乎所有的 Event 函数都是虚函数,所以可以重新实现。
比如:在实现鼠标的进入和离开事件时,直接重新实现 enterEvent()
和 leaveEvent()
即可。enterEvent()
和 leaveEvent()
函数原型如下:
本文标签: QT事件系统入门QEvent 基础与示例
版权声明:本文标题:【QT】事件系统入门——QEvent 基础与示例 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1748296711a2281601.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论