gpt4 book ai didi

python - 如何在 PyGObject 中为信号提供累加器?

转载 作者:太空宇宙 更新时间:2023-11-03 15:05:11 25 4
gpt4 key购买 nike

我有一个继承自 GObject 的类。当我从任何回调收到非 None 结果时,我需要发出信号并停止。

类似这样的事情..

    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 中的非 None 结果的回调中,我不知道这是否与某种“累加器”函数有关。我如何在 pygtk 中完成此操作?

最佳答案

如果您使用@GObject.Signal 装饰器,则可以向其传递一个累加器参数。文档在这里: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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com