对QT5信号与槽的认识

关键字参数理解:

在QT中,连接槽与信号的关键字是connect,它里面的参数如下:

 

按照我的理解,里面四个参数分别如下:

1、信号发送者

2、发送的信号

3、信号接收者

4、接收的信号

 

【拓】:

信号发送者和信号接收者传的参数都是相应对象的地址

如果声明对象的时候,使用的是指针,则不用加&,如果是直接声明的对象,则需要加&进行取址。

例如:

声明一个按钮对象

QPushButton button1;//直接声明的对象本身

调用相应函数时,使用“.”关键字

在connect中使用如下:

connect(&button1,参数2,参数3,参数4);

 

QpushButton *button2;//声明了一个指向该button对象的指针,指针表示的就是该对象的地址,加*表示该对象的内容

调用相应函数时,使用“->”关键字

在connect中使用如下:

connect(button2,参数2,参数3,参数4);

 

比如说,点击一个按钮a,点击之后,使另一个按钮b消失

那么按钮a就是信号发送者,点击按钮这个动作就是发送的信号;

按钮b就是信号的接收者,按钮b消失就是接收到的信号

内置的信号与槽函数:

根据前面讲的,点击一个按钮a,让按钮b消失,如果写的话,可以这样写:

QPushButton *a;

QPushBUtton *b;

a=new QPushButton("a",this);//使用指针需要使用new关键字申请控件

b=new QPushButton("b",this);

connect(a,&QPushButton::clicked,b,&QPushButton::hide);

 

如果我们查看QPushButton的API,会发现如下内容:

会发现QPushButton里已经有内置的槽函数了

其槽函数好像只有一个,showMenu(),但是仔细看,会发现,API里写着,有5个槽函数继承自QAbstractButton,有19个槽函数继承自QWidget,有1个槽函数继承自QObject。

但是又仔细看QPushButton的API

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值