Qt信号机制

如果你觉得这个文章对你有帮助,留下个脚印吧。

Qt信号槽机制很复杂,但是使用起来却很简单。以下内容是个人遇到的一些情况后总结的一些经验,不保证原理绝对正确,但这么使用没错。


问:信号和槽只能一对一对应么?

答:不是的,

可以多个信号对应一个槽,可以是connect  multi-signals to one-slot .

可以一个信号对应多个槽,可以是connect one-signal to multi-slots

还可以一个信号对应一个信号,就是connect one-signal to one-signal.


问:什么条件下才能自定义信号?

答:一个条件。你继承的基类中必须是从QObject中继承过来的。如果原来继承的是一个不是由QObject派生的类,那就没办法自定义信号了。

不清楚的可以下一个Qt类图看,一目了然


问:如果我继承了一个非派生自QObject的类,但是又需要使用信号机制怎么办?

答:使用多继承就可以解决了


问:如何定义一个自己的信号?

答:分以下几步

(1)查看自己继承的类是不是派生自QObject,查看类图或者帮助手册都可以

(2)查看在类头部加入Q_OBJECT定义没有,如果没有就不能编译通过

(3)使用signals声明后面的内容是信号声明</

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值