Qt信号和槽解释与使用方法

Qt信号和槽的理解:
信号和槽机制是Qt的核心特征。

信号和槽的特点:

1、一个信号可以关联一个槽,或者多个槽。多个信号也可以关联一个槽。

如果存在多个槽与某个信号相关联,那么当这个信号被发射时,槽的执行顺序与关联顺序相同。
2、一个类的信号可以关联到其他类的槽。

使用方法:

对于信号和槽,需要使用SIGNAL和SLOT这两个宏

connect(this,SIGNAL(emitsig()),&test,SLOT(slot_msg()));

解释:

this              表示谁发射信号。
emitsig()     表示要发射的信号
&test           表示谁接收这个信号,这里的test是其他类的对象。如果是this表示是本部件接收
slot_msg()   表示要执行的槽函数

用白话说就是,我(发射信号的对象、this),我叫他吃饭去(发射一个信号、emitsig()),然后对面的伙伴(其他对象、test)
              他听到了我说的话(即接收到信号),说了一声好的(槽函数处理事件、slot_msg())。

除了connect(this,SIGNAL(emitsig()),&test,SLOT(slot_msg()))的写法,还有以下的一些常用写法:

QObject::connect(view,&AutoView::sigConnect,m_model,&UpModel::slotConnect); //不同对象通信


connect(ui->connectBtn,&QPushButton::clicked,[&](){

    ui->cancelBtn->setEnabled(false);

    emit sigConnect();

});

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值