pyqt4:连接滑块以刷新p

2024-09-30 07:33:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试设计一个GUI来刷新一个绘图,即plot(timeS, dataS),使用一个与我要显示的数据(dataS)的时间向量(timeS)相对应的滑块,它随时间变化。你知道吗

我已经尝试连接滑块到我的绘图功能有很多的输入 self.slider.valueChanged.connect(self.myPlotFunction(.....)),它位于类的init部分,但是我不能使用定义的函数myPlotFunction()的输入。你知道吗

所以我希望当我开始拖动滑块时,绘图会根据滑块的时间/位置而改变。此外,我的时间向量是由浮点组成的,而滑块允许int值。你知道吗


Tags: 数据self功能绘图plotconnect时间gui
1条回答
网友
1楼 · 发布于 2024-09-30 07:33:00

连接插槽时,不会调用函数,因此

self.slider.valueChanged.connect(self.myPlotFunction(.....))

应该看起来像

self.slider.valueChanged.connect(self.myPlotFunction)

而且myPlotFunction的定义必须与valueChanged信号的参数签名匹配,所以

def myPlotFunction(self, sliderValue):
    # Do stuff
    pass

如果需要向myPlotFunction传递更多内容,可以使用lambda,确保容纳Qt将首先传递的参数,即

otherVar = "some other stuff"
self.slider.valueChanged.connect(lambda sv, ov=otherVar: self.myPlotFunction(sv, ov))

并相应地调整myPlotFunction的定义。你知道吗

相关问题 更多 >

    热门问题