我有一个从GObject继承的类。当我从任何回调中收到非无结果时,我需要发出一个信号并停止。
像这样
class A(GObject.Object):
__gsignals__ = {'get_my_object':(GObject.SIGNAL_RUN_LAST, subClassGObject, (int,))}
def get_the_object(self):
my_obj = self.emit('get_my_object')
在曾经返回应存储在my_obj中的第一个非无结果的回调中,我不知道这是否与某种“累加器”功能有关。如何在pygtk中完成此操作?
最佳答案
如果使用@GObject.Signal
装饰器,则可以向其传递accumulator
参数。文档在这里:https://github.com/GNOME/pygobject/blob/b2529624b3925adbef2671025e08cbf747f162e8/gi/_signalhelper.py#L49
@GObject.Signal(accumulator=GObject.signal_accumulator_first_wins)
def my_signal(self):
return None
关于python - 如何在PyGObject中具有信号的累加器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44729667/