如何在 pyGTK 超时时调用函数?

发布于 2024-09-29 21:58:56 字数 400 浏览 4 评论 0原文

当我尝试在 pyGtk 中使用超时调用函数时,收到错误消息 TypeError: secondary 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())

这不起作用...

我做错了什么?

When I try to call a function using a timeout in pyGtk, I receive the error message TypeError: second argument not callable.
All I want to do is call a very simple function from within the time out. To illustrate my proble, I have simply prepared the function do_nothing to illustrate my problem.

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())

which does not work...

What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梦途 2024-10-06 21:58:56

您正在调用该函数:

self.do_nothing()

您想要传递该函数:

self.do_nothing

省略括号。

You're calling the function:

self.do_nothing()

You want to pass the function:

self.do_nothing

Omit the parentheses.

旧时浪漫 2024-10-06 21:58:56

传递 self.do_nothing 而不是 self.do_nothing()

self.do_nothing is callable 

self.do_nothing() 返回一个值,并且该返回值不是可调用的

Pass self.do_nothing and not self.do_nothing()

self.do_nothing is callable 

self.do_nothing() returns a value and that return value is not a callable

时光沙漏 2024-10-06 21:58:56

尝试改为:

self.check_timing = gobject.timeout_add(500, self.do_nothing, self)

try instead:

self.check_timing = gobject.timeout_add(500, self.do_nothing, self)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文