据我所知,我们可以使用QSignalMapper收集一组无参数信号,并使用与发送信号的对象相对应的整数,字符串或窗口小部件参数重新发出它们。
但我们可以反过来吗? 例如,是否有可能实现:
connect(control,startVehicle(0),vehcileList[0],startReceived());
connect(control,startVehicle(1),vehcileList[1],startReceived());
connect(control,startVehicle(2),vehcileList[2],startReceived());
而不是来自对照的3个不同信号
startVehicle_1();
startVehicle_2();
startVehicle_3();
答案 0 :(得分:1)
有一种更简单的方法:
connect(control, SIGNAL(startVehicle(int)), this, SLOT(startReceived(i)));
//in startReceived(i) slot
vehcileList[i]->startReceived();