2008-09-15 10 views
7

파이썬 개체를 만들었지 만 신호를 보내려고합니다. 나는 그것을 객체로부터 상속 받았다. 객체, 그러나 내 객체에 새로운 신호를 생성하는 어떤 방법도없는 것 같다. 마지막 인수에 두 번째는 반환 형식과 마지막 인자이다pygtk에서 새 신호를 만드는 방법

import gobject 

class MyGObjectClass(gobject.GObject): 
    ... 

gobject.signal_new("signal-name", MyGObjectClass, gobject.SIGNAL_RUN_FIRST, 
    None, (str, int)) 

가 인수 형식의 튜플이다 : 여기

답변

11

또한 클래스 정의 내부 신호를 정의 할 수 있습니다 : 튜플의

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

내용은 gobject.signal_new에 세 마지막 인수로 동일합니다. 사용 가능한 키위 here를 사용하는 경우

4

는 방법이다.

2

당신은 다만 할 수 있습니다

from kiwi.utils import gsignal 

class MyObject(gobject.GObject): 
    gsignal('signal-name')