什么是GTK中的timeout_id?

时间:2012-09-08 06:51:59

标签: gtk pygobject

我正在阅读官方的PyGObject教程,我在其中一个例子中找到了这个(无法解释的)行:

self.timeout_id = None

(它位于__init__ - 后代类的Gtk.Window函数内;整个列表为here)。我不能谷歌呢;这是为了什么?

1 个答案:

答案 0 :(得分:5)

您没有看到它被设置并在on_pulse_toggled中进一步使用?

为GObject.timeout_add分配了返回值,它添加了一个稍后调用的函数,可能是重复的(如本例所示):

        self.timeout_id = GObject.timeout_add(100, self.do_pulse, None)

当您希望不再调用此超时时,您必须将其删除,并且为此,您需要您创建的超时的ID:

        GObject.source_remove(self.timeout_id)