Qt 笔记:事件处理(上)

Qt消息处理模型

 Qt平台将系统产生的消息转换为Qt事件

-Qt事件是一个QEvent的对象

-Qt事件用于描述程序内存的外部发生的动作

-任意的QObject对象都具备处理事件的能力

 GUI应用程序的事件处理方式

-Qt事件产生后立即被分发到QWidget对象

-QWidget 中的event(QEvent*)进行事件处理

-event()根据事件类型调用不同的事件处理函数

-在事件处理函数中发送Qt中预定义的信号

-调用信号关联的槽函数

QPushButton事件处理

-接受到鼠标事件

-调用event(QEvent*)成员函数

-调用mouseReleaseEvent(QMouseEvent*)成员函数

-调用click()成员函数

-触发信号SIGNAL(clicked())

事件(QEvent)和信号(SIGNAL)不同

-事件由具体对象进行处理

-信号由具体对象主动产生

-改写事件处理函数可能导致程序行为发生改变

-信号是否存在对应的槽函数不会改变程序行为

-一般而言,信号在具体的事件处理函数中产生

总结:

`Qt中的事件(QEvent)和信号(SIGNAL)不同

·事件由QObject的对象进行处理

·信号由QObject对象触发

·重写事件处理函数可能改变程序行为

·信号的触发不会对程序行为造成影响

·事件处理是在实际工程开发中的应用非常普遍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值