自定义事件

以下是一个使用 Python 实现自定义事件的示例代码: import threading import time class CustomEvent: def __init__(self): self.handlers = set() def add_handler(self, handler): self.handlers.add(handler) def remove_handler(self, handler): self.handlers.remove(handler) def fire(self, *args, **kwargs): for handler in self.handlers: handler(*args, **kwargs) # 创建一个自定义事件 my_event = CustomEvent() # 定义一个事件处理函数 def on_my_event(message): print('Custom event received:', message) # 添加事件处理函数到事件处理程序列表 my_event.add_handler(on_my_event) # 触发自定义事件 my_event.fire('Hello, world!') # 等待一段时间,以便查看输出结果 time.sleep(1) 在这个示例中,我们首先定义了一个名为 CustomEvent 的自定义事件类,其中包含了添加、删除和触发事件处理程序的方法。接着,我们创建了一个 my_event 实例作为自定义事件,并定义了一个名为 on_my_event 的事件处理函数。然后,我们将 on_my_event 函数添加到 my_event 实例的事件处理程序列表中。最后,我们通过调用 my_event.fire 方法触发了自定义事件,并传递了一个消息作为参数。这将导致事件处理程序被调用并输出消息。 ...

2025年7月28日 · 2 分钟 · 583 字