Qt信号与槽

基础概念

信号源:由哪个控价发出的信号

信号的类型:用户进行不同的操作,就可能触发不同的信号.

  • 点击按钮,触发信号
  • 在输入框中移动光标,触发移动光标的信号
  • 勾选一个复选框

信号的处理方式:槽(slot)->函数

Qt中可以使用connect这样的函数,把一个信号和槽关联起来,只要信号触发了,Qt就会自动执行槽函数(本质上就是一个回调函数

举一个基本例子 

假设你在打联盟,玩的是ADC,这个时候打野发了一个打野MISS,这个时候你走回塔下

在这个情境中

信号源:打野

信号类型:敌方打野MISS

信号的处理方式:走回塔下

上述操作过程中,提前把不同的信号的处理方式,一定是先把信号的处理方式准备好,在触发信号

connect函数的用法

这个函数是由QObject提供的静态的成员函数

这个里面有四个参数

sender:信号的发起者

signal:信号类型

receiver:信号的接受者

method:对信号的处理方式

type:连接方式

举一个基本例子

一些常见问题

为什么connect明明要的是一个char*,却能接受一个void*的指针呢?

原因是在Qt5之后,就使用了C++的泛型编程,提供了一个类型萃取器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值