QT的信号与槽

QT的信号与槽

信号和槽是一种高级接口,应用于对象之间的通信信号和槽是
QT自行定义的一种通信机制,它独立于标准的C/C++语言,因此要正
确的处理信号和槽,必须借助一个称为 moc (Meta Object Compiler)
的QT工具,该工具是一个C++预处理程序,它为高层次的事件处理自
动生成所需要的附加代码。

在所有从 QObject或其子类(例如Qwidget)派生的类都能够包含信号和
槽当对象改变其状态时,信号就由该对象发射(emit)出去,这就是
对象所要做的全部事情,它不知道另一端是谁在接收这个信号。这就
是真正的信息封装,它确保对象被当作一个真正的软件组件来使用。
槽用于接收信号,但它们是普通的对象成员函数。

信号-槽机制完全独立于任何GUI事件循环。• 如果存在多个槽与某个信号相关联,那么,当这个信号被发射时,这些槽将会一个接一个地执行,但是它们执行的顺序将会是随机的、不确定的,我们不能人为地指定哪个先执行、哪 个后执行。
信号却没有函数体定义,另外,信号的返回 类型都是void

OBJECT 1 (SIGNAL1)--------------->OBJECT 2(SLOT1)
connect(OBJECT1,SIGNAL1,OBJECT2,SLOT1)
**public slots/ protected slots/ private slots
public slots:在这个区内声明的槽意味着任何对象都可将信号与之相连接。这对于组件编程非常有用,你可以创建彼此互不了解的对象,将它们的信号与槽进行连接以便信息能够正确的传递。
pr

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值