如何使用 QSignalMapper 映射多个复选框?
我将使用的来自复选框的信号是 stateChanged(int flag)
。在此过程中,我想保留此 int 标志
,它最终将与其他映射变量一起发送到我的自定义插槽。
我怎么能做到这一点?我用的是Qt4。
最佳答案
您不能使用 QSignalMapper
直接转发函数参数。有两种方法可以解决这个问题。
- 重写
QSignalMapper
的自定义版本,它采用适当的函数参数并转发它们。 - 将复选框信号直接连接到您想要的插槽,并检查插槽中
sender()
的返回值以查看哪个复选框发出了信号。
关于c++ - QSignalMapper 可以转发函数参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26924306/