Qt学习第5天:事件处理之前的拦截

记录下Qt学习的过程
2020-03-21 周六
在程序给把事件发到事件过滤器之前可以进行拦截
步骤1:给控件安装事件过滤器:
ui->label_2->installEventFilter(this);
此处的this是父类,因为是安装在本窗口内,所以需要父类给他安装。
步骤2 :重写eventfilter函数:先在.h文件进行调用,然后在对应窗口界面进行实现。
bool Widget::eventFilter(QObject *obj, QEvent *e)
{
//逻辑。。。。
if (//)
{
return true;
}
return 父类 ::eventFilter(obj , e);
}

eventfilter函数中有两个变量,QObject 用来判断哪个控件;
QEvent 用来判断对该控件进行的操作。
此处有一个需要注意:第一个返回值是true,代表可以直接执行之前代码。
第二个return 是代表在此次调用中,除被设定的拦截之外,其余的事件均交由 父类* 处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值