我有一个pyqtgraph组合框,其定义如下。在
def __init__(self):
# some other stuff....
mylist=OrderedDict()
mylist['1k'] = 1
mylist['10k'] = 10
mylist['100k'] = 100
mylist['1M'] = 1000
self.myselectorA = ComboBox()
self.myselectorA.setItems(mylist)
self.myselectorA.currentIndexChanged.connect(self.selchangedA)
def selchangedA(self):
self.sq.setA(self.myselectorA.value())
if self.sq.gainlink:
self.sq.setB(100./self.myselectorA.value())
self.viewupdate = True
self.myselectorB.setValue(100./self.myselectorA.value())
self.viewupdate = False
附加的回调函数selchangedA
执行一些操作,其中包括第二个组合框(myselectorB
)的可选更新。此更新依赖于另一个变量gainlink
。在
我有这样的情况,我需要能够检测到对组合框中相同元素的重新选择,以便它更新辅助组合框。这可能吗?在
我知道用户应该在辅助组合框中选择适当的值,但是我希望用户有最大的灵活性。在
您可以将信号
currentIndexChanged(int)
连接到selchangedA(self, int)
,而不是activated(int)
(如果选择没有改变,但是选择了一个元素,它也会发出)连接到selchangedA(self, int)
。此外,您可以将组合框的当前索引保存在一个单独的变量中,如果值与前面的值相同,则签入selchangedA
,并相应地执行操作。在相关问题 更多 >
编程相关推荐