1

公式の PyGObject チュートリアルを読んでいると、例の 1 つでこの (説明のつかない) 行が見つかりました。

self.timeout_id = None

(これは -descendant クラスの__init__関数内にありました。Gtk.Windowリスト全体はhere です)。グーグルで検索できませんでした。それはなんのためですか?

4

1 に答える 1

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)
于 2012-09-08T06:58:16.067 に答える