0
나는 recent question on SO 다음에 GObject's "add_emission_hook"을 사용하도록 지시되었지만 사용 예제를 찾을 수 없습니다.GObject.add_emission_hook 사용법
공유 할 사람이 있습니까? IRC의 #pygtk에 도움이 사람들과 함께 토론 후
나는 recent question on SO 다음에 GObject's "add_emission_hook"을 사용하도록 지시되었지만 사용 예제를 찾을 수 없습니다.GObject.add_emission_hook 사용법
공유 할 사람이 있습니까? IRC의 #pygtk에 도움이 사람들과 함께 토론 후
은, 여기에 내가 생각 해낸 것입니다 :
import gobject
class Signals(gobject.GObject):
__gsignals__ = {
"lastfm_username_changed": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (gobject.TYPE_STRING,)) #@UndefinedVariable
}
def __init__(self):
gobject.GObject.__init__(self)
class Bus(object):
"""
Message Bus - Borg pattern
"""
_signals=Signals()
@classmethod
def emit(cls, name, *pa, **kwa):
cls._signals.emit(name, *pa, **kwa)
@classmethod
def add_emission_hook(cls, name, callback):
gobject.add_emission_hook(cls._signals, name, callback)
if __name__=="__main__":
def callback(self, data):
print "callback: data=%s" % data
Bus.add_emission_hook("lastfm_username_changed", callback)
Bus.emit("lastfm_username_changed", "jldupont")
난 단지 구글의 codesearch, http://google.com/codesearch와 몇 가지 예를 찾을 수 있을까? hl = en & lr = & q = "add_emission_hook"+ lang : python & sbtn = 검색, 또는 koders, http://www.koders.com/default.aspx?s="add_emission_hook"&submit=Search&la=Python&li=*,하지만 아마도 도와 드릴까요? –
내가 말할 수있는 한, 당신은 첫 번째 매개 변수로 클래스를 전달한다는 점을 제외하고는 (object를 받아들이는 것을 제외하고는) "object".connect와 같은 방식으로 사용한다. (PyGTK 버전은 객체를 받아 들인다.). 따라서 언급 한 특정 예제의 경우 gobject.add_emission_hook (Car, 'engine-started', myCallback)이됩니다. 나는 그것을 실제로 사용한 적이 없으므로 잘못되었을 수도 있습니다. –