网站建设软件长沙企业网站建设

中国租赁网 2026/09/09 17:42:13

目录

  • 1,事件的概念
  • 2,事件循环
  • 3,父子控件之间事件的传递处理
  • 4,事件过滤器

1,事件的概念

定义:事件是应用程序内部发生的事情或应用程序需要知道的外部事件的结果。

事件和信号的区别:
事件是由外部向内部,信号是由内部向外部。事件先发生,信号后发生。

2,事件循环

intmain(){do_step1();do_step2();}

等待事件发生之后再退出。

intmain(){while(!is_quit()){do_step1();do_step2();}}


当我们运行程序时,会向操作系统注册回调函数,当有事件发生时,操作系统会调用回调函数,此时会记录发生的事件是那种类型的事件,然后将事件加入到一个消息队列当中,此时一个循环就会处理消息队列中存储的事件,然后根据对应事件去进行逻辑处理。

3,父子控件之间事件的传递处理



以上两个图描述的是Qt负责处理事件处理的类关系图和Qt中常用的处理事件的几种方式。

在实际的项目中会经常处理父子窗口之间的事件传递,那么事件传递的机制是怎样的呢?
以下是两个事件处理函数。

其中Widget是父窗口,MyLineEdit是子窗口。当出现事件时,说先处理子窗口,后处理父窗口。
但是以上的编码实际上在多次出现某种事件之后父窗口的事件只执行了一次。所以需要在子窗口的事件函数中添加代码 event->ignore();
此外重写处理函数时,需要调用基类的处理函数。


有的时候根据需要我们需要事件进行子窗口到父窗口的传递,有时候不需要,那么怎么控制传递呢?
event->ignore(); 允许事件进行子窗口到父窗口的传递。
event->accept(); 阻止事件进行子窗口到父窗口的传递。

4,事件过滤器

通常情况下,一个父窗口中往往会有很多子窗口,而此时发生在这个窗口中的事件需要我们去一 一 处理,很多时候我们需要分清楚这个事件是发生在哪个子窗口中的,这个时候我们就需要事件过滤器去帮助我们判断。

假设我们的父窗口类为 Widget 子窗口类为 MyLineEdit 。

应用事件过滤器,首先要重写
bool QObject::eventFilter(QObject *watched, QEvent *event);函数
其次还要给主窗口安装事件过滤器,
ui->lineEdit->installEventFilter(this);在这个示例里面表示是一个名为lineEdit控件安装事件过滤器。

示例:

bool Widget::eventFilter(QObject*watched,QEvent*event){if(watched==ui->lineEdit){if(event->type()==QEvent::KeyPress){//进行相应逻辑处理}}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

泰州网站建设大型网站建设

GLM-TTS与Stripe支付集成:实现按量付费语音合成服务在短视频、播客和在线教育内容爆发式增长的今天,个性化语音生成正从“锦上添花”变为“刚需”。用户不再满足于千篇一

2026/06/30 12:38:32

南京网站建设济南营销型网站建设

FaceFusion能否用于婚礼视频制作?新人专属特效定制在一场现代婚礼的筹备中,越来越多新人不再满足于传统的摄像记录。他们希望自己的婚礼视频不只是“拍下来”,

2026/06/30 11:18:54

网站建设哪家公司好网站建设总结

一.了解我在尝试建立HAL库的时候使用的正点原子的sys.c的工程,结果出现芯片内核锁死的问题。究其原因是因为正点原子使用的是8M的晶振,就导致程序下进去就会锁死内核这是正

2026/06/30 12:28:31

三亚网站建设长春网站建设

PaddlePaddle镜像在电商商品图像检索中的应用实例如今,用户打开电商平台,随手拍下一张商品照片,就能立刻找到同款甚至更优惠的链接——这种“以图搜货”的

2026/06/30 13:16:35

龙岗网站建设宁波网站建设公司

第一章:Open-AutoGLM 无线调试开启Open-AutoGLM 是一款面向智能设备的开源自动化推理框架,支持在边缘设备上实现大语言模型的本地化部署与无线调试。通过内

2026/06/30 13:00:04

上海网站建设公司潜江网站建设

XSP30 支持升降压型多节串联锂电池充电管理芯片。支持 PD、QC、BC1.2 等多种快充协议和自适应适配器充电,充电电流最大可达 2A。具有涓流(TC)、

2026/06/30 13:20:35

网站建设项目邵阳网站建设

在数字政府建设浪潮中,政务热线作为政民互动的核心渠道,正从 “数字化” 向 “数智化” 全面跃迁。清华大学数字政府与治理研究院发布的《AI 驱动政务热线发展研究报告

2026/06/30 12:29:31

品牌网站建设建设网站公司

C++优化ACE-Step核心推理引擎:减少延迟提高采样率在AI音乐生成从实验室走向创作一线的今天,一个关键瓶颈逐渐浮现:如何让高保真模型“跑

2026/06/30 11:11:24

网站建设规划书网站建设排名

📝 博客主页:J'ax的CSDN主页扩散模型:药物研发周期的革命性缩短者目录扩散模型:药物研发周期的革命性缩短者引言:药

2026/06/30 11:22:55

番禺网站建设扬州网站建设

CosyVoice3与其它TTS工具对比:优势在于情感表达与方言支持在短视频配音、虚拟主播、智能客服等应用日益普及的今天,用户对语音合成的要求早已不止于“能说话”——他们需

2026/06/30 14:07:08