Qt的信号与槽的基本了解

        信号与槽是 Qt 框架引以为豪的机制之一。所谓信号与槽,实际就是观察者模式(发布-订阅模式)。优点:松散耦合,信号的发送端和接收端本身没有关联,是通过connect函数将两端进行连接。

        在Qt中信号和槽函数都是独立的个体,本身没有任何联系,但是由于某种特性需求我们可以将二者连接到一起。信号(Signal)是由于用户对窗口或控件进行了某些操作,导致窗口或控件产生了某个特定事件,这时候Qt对应的窗口类会发出某个信号,以此对用户的挑选做出反应。槽(Slot)就是对信号响应的函数。

        connect函数,需要四个参数,简单来说,四个参数可以理解为: ① 信号发送端  ② 信号(函数的地址)  ③ 信号的接收端  ④ 信号的处理(槽函数) 。具体内容可以在Qt助手中查看。

        比如:我设置一个按钮 btn_close,创立widget界面时取名为 myWidget。我的需求是当我点击btn_close 按钮时,会使界面关闭,那么 connect 应用如下:

connect(btn_close,&QPushButton::clicked,this,&myWidget::close);

其中,① btn_close 就是信号发送端;②发送的信号是点击了按钮(&QPushButton::clicked);③ 信号的接收端是这个界面,可以用 this 表示;④ 对信号的处理方式是页面关闭(&myWidget::close)

        上述的按钮点击都是一些内置的信号或槽函数,称为 标准信号 和 标准槽函数 。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

90后嫩男

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值