信号和槽机制
Qt 提供了一种新的对象间的通信方式,即信号和槽机制。
信号和槽的使用
槽的本质就是类的成员函数,其参数可以是任意类型,可以是虚函数,可以被重载。槽通常和信号连接在一起,当信号被发出时,与这个信号连接的槽函数就会被调用。
connect(sender, SIGNAL(signal), receiver, SLOT(slot));
- sender:发出信号的对象的指针。
- signal:发送对象发出的信号。
- receiver:接收信号的包含槽函数的对象的指针。
- slot:接收对象在接收到信号之后所需要调用的槽函数。
信号和槽是多对多的关系,可以一个信号连接多个槽,也可以多个信号连接同一个槽。
connect(sender, SIGNAL(signal), receiverA, SLOT(slotA));
connect(sender, SIGNAL(signal), receiverB, SLOT(slotB));