Qt中信号与槽的对应关系
到目前为止,我们已经可以吧信号与槽连接在一起了。但我们还需要考虑一些其他的可能性。例如下图所示:
一个信号连接多个槽(一对多)
如signal5连接了slot2和slot3。
void one_to_multi()
{
qDebug() << "one_to_multi()" << endl;
TestSignal t;
RxClass r1;
RxClass r2;
t.setObjectName("t");
r1.setObjectName("r1");
r2.setObjectName("r2");
QObject::connect(&t, SIGNAL(testSignal(int)), &r1, SLOT(mySlot(int)));
QObject::connect(&t, SIGNAL(testSignal(int)), &r2, SLOT(mySlot(int)));
t.send(100);
}
输出结果:
one_to_multi()
void mySlot(int v)
Sender: “t”
Receiver: “r1”
Value: 100
void mySlot(int v)
Sender: “t”
Receiver: “r2”
Value: 100