Python オブジェクトを作成しましたが、シグナルを送信したいと考えています。gobject.GObject から継承させましたが、オブジェクトに新しいシグナルを作成する方法がないようです。
clahey
質問する
3079 次
3 に答える
11
クラス定義内でシグナルを定義することもできます。
class MyGObjectClass(gobject.GObject):
__gsignals__ = {
"some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (object, )),
}
タプルの内容は、の最後の3つの引数と同じgobject.signal_new
です。
于 2008-09-15T22:52:27.343 に答える
4
方法は次のとおりです。
import gobject
class MyGObjectClass(gobject.GObject):
...
gobject.signal_new("signal-name", MyGObjectClass, gobject.SIGNAL_RUN_FIRST,
None, (str, int))
最後から 2 番目の引数は戻り値の型で、最後の引数は引数の型のタプルです。
于 2008-09-15T20:57:10.490 に答える
2
ここで入手可能なキウイを使用する場合は、次のことができます。
from kiwi.utils import gsignal
class MyObject(gobject.GObject):
gsignal('signal-name')
于 2008-09-24T10:14:06.910 に答える