QT 的事件系统

事件类和事件类型

事件是QEvent类或者它的派生类的实例。

QEvent 主要的几个接口

1、void accept(); //表示接收事件,该事件已经被处理过了

2、 void ignore(); //忽略

3、isAccepted() ; //是否接受

4、isPointerEvent() // 该事件是不是 PointerEvent点击事件或其派生类的示例

5、isSinglePointEvent(); //是不是单击或其派生类的实例

QEvent:: Type type() ; //用来判断当前事件类型(鼠标、键盘等)

具体的事件类自己去QT手册里查一下

事件的处理

任何从QObject派生的类都可以处理事件,主要是从QWidget派生的窗口类和UI组件需要处理事件

调用方法

widget.h, class widget{}中右击,选择 重构->选择重构虚函数 在该选项下可以选择一般事件,如果要自定义的话可以重构 event()

注:event->buttons() //判断是不是鼠标按钮

Qt::leftButton() ;//左键

event->Key() //键盘上的按键 Eg: Qt::Key_A //字母A

事件与信号

总体流程: 可以通过类(在QT里新建一个cpp 文件,把具体的UI组件作为基类继承,重写 event事件,以及要用到的一般事件,注一定要自定义一个信号,在要用到的一般事件里边发送)再回到主窗体中,将某个一般事件中想要实现的功能写入自定义槽函数,最后通过connect将指定组件的信号与主窗体中的自定义槽函数相关联

eg: connect(ui->lab,SIGNAL(doubleClicked()),this,SLOT(do_doubleClick()));

doubleClicked:: 自定义类里的自定义函数

需要将TLabel组件 右击选择 提升为 将指定自定义类和组件绑定起来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值