我有一个字典,其中的键是我的PyQT界面中所有拨号的名称。与这些键相关的值是与每个拨号相关联的某些数字值,这些值需要传递给处理函数(以确定哪个拨号被移动)以及该拨号的新值。使用部分为PyQt中返回值的信号创建插槽
我已经使用functools.partial为每个数值创建处理函数的不同实例,但“valueChanged”信号返回一个整数,我不知道如何将它传递给部分函数以及。以下似乎不工作,因为dialChanged函数结束从来没有被称为:
for dial, cc, in dialDict.iteritems():
getattr(self.ui, dial).setRange(0,127)
getattr(self.ui, dial).valueChanged.connect(
lambda value: partial(self.windowHandler.dialChanged,
mainWindowInstance=self,
cc=cc,
value=value))
我认为这个问题与内使用lambda函数的for循环和范围的事,但我m不知道如何以其他方式将valueChanged信号的返回值传递到部分创建的插槽中。任何建议,将不胜感激。
'dialChanged'的签名是什么? – 2012-04-04 00:40:18