连接到插槽时传递const值

时间:2012-07-31 13:47:45

标签: qt signals-slots

我在同一个对象中有很多信号,我希望在连接时传递const时将它们连接到单个插槽。具体来说,我想做这样的事情:

connect (obj, SIGNAL(sig()), obj2, SLOT(sl(1))) ;
connect (obj, SIGNAL(sig()), obj2, SLOT(sl(2))) ;
connect (obj, SIGNAL(sig()), obj2, SLOT(sl(3))) ;
connect (obj, SIGNAL(sig()), obj2, SLOT(sl(4))) ;

我有什么方法可以做到这一点? 由于所有信号都来自同一个对象,我无法使用QSignalMapper。 有任何建议/解决方法吗?

2 个答案:

答案 0 :(得分:1)

为每个连接使用单独的QSignalMapper。效率不高,但应该有效。

答案 1 :(得分:0)

您也可以尝试

connect (obj, SIGNAL(sig(int)), obj2, SLOT(sl(int))) ;

因为使用信号&插槽,两者都应具有相同的参数。所以我们可以发出任何值的任何信号。信号发出的值自动传递到插槽。