Pyqt QtCore.QTimer()。timeout.connect(self.function)错误[缺少1个必需的位置参数:'Form']

时间:2017-04-03 20:10:13

标签: python timer pyqt5 qtcore qtimer

作为PyQt5 Gui的python脚本中的函数的一部分,我有以下代码:

def link_info(self, Form):
    self.timer = QtCore.QTimer()
    self.timer.stop
    self.ip=self.lineEdit_ip.text()
    self.port=int(self.lineEdit_2.text())
    self.function(Form)
    print('here')
    self.timer.timeout.connect(self.function)
    self.timer.start(5000)

我收到错误:

  

function()缺少1个必需的位置参数:'Form'

当我将代码更改为:

self.timer.timeout.connect(self.function(Form))

我收到错误:

  

参数1具有意外类型'NoneType'

我该如何解决这个问题?

由于

1 个答案:

答案 0 :(得分:1)

您需要使用lambda: self.function(Form)functools.partial(self.function, Form)来获取一个不需要参数的可调用,但仍可以在以后由QTimer调用。 / p>