在 PyQt4 应用程序中,我根据用户操作将滑块连接到一个或另一个插槽。我更改插槽分配以响应按钮单击。几个不同的槽做不同的事情,太不同了,不能用一些“if”语句合并到一个槽中。
这个应用程序经常崩溃。我想知道像这样动态地将插槽重新分配给一个信号是否符合规定。这是否会导致 PyQt4 内部的悬空指针、内存损坏或其他不良情况?如果我做的没问题,我会在别处寻找错误。
这是我的应用程序的一个非常草图的版本:
def MyThing(QWidget):
(in some approprate place)
self.s = QSlider()
def MethodOne(self): # this is a slot handling a button click
self.s.valueChanged.connect(self.someslot1)
def MethodTwo(self): # likewise
self.s.valueChanged.connect(self.someslot2)
def someslot1(self, svalue): # slider movement handler
(compute, show info based on slider position)
def someslot2(self, svalue): # similar to someslot1
....