3

pygtkシグナルのドキュメントはシグナルの作成についてかなり明確ですが、パラメーターを受け取らないシグナルを作成することはできませんでした。

私が欲しいのは(例のように)定義することです:

class MyGObjectClass(gobject.GObject):
    __gsignals__ = {
      "some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE),
    }

次に、次のように呼び出します。

self.emit('some-signal') # not passing any arguments

gsignal_newの3番目のパラメーターが必須であり、Noneにすることはできないため、現在これを行うことはできません。

4

1 に答える 1

6

3番目の引数として空のタプルを使用するだけです。

__gsignals__ = {
  "some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, ()),
}
于 2011-04-06T20:49:28.580 に答える