当我尝试在pyGtk中使用超时调用函数时,收到错误消息TypeError: second argument not callable
。
我想做的就是在超时内调用一个非常简单的函数。为了说明我的问题,我只是准备了函数do_nothing
来说明我的问题。
def do_nothing(self):
return True
# Do interval checks of the timer
def timed_check(self, widget):
self.check_timing = gobject.timeout_add(500, self.do_nothing())
哪个不起作用......
我做错了什么?
答案 0 :(得分:6)
你正在调用这个函数:
self.do_nothing()
你想传递这个功能:
self.do_nothing
省略括号。
答案 1 :(得分:1)
传递self.do_nothing而不是self.do_nothing()
self.do_nothing is callable
self.do_nothing()返回一个值,该返回值不是可调用的
答案 2 :(得分:1)
尝试改为:
self.check_timing = gobject.timeout_add(500, self.do_nothing, self)