Appearance
unison.signal — 信号系统
简单的信号/槽机制,用于对象间解耦通信。
使用方式
python
from unison import signalSignalManager 类
信号管理器单例。
python
mgr = signal.SignalManager.get()方法
| 方法 | 说明 |
|---|---|
get() | 获取信号管理器单例 |
connect(source, signal_name, handler) | 连接信号 |
disconnect(source, signal_name) | 断开连接 |
emit(source, signal_name) | 发射信号 |
flush_deferred() | 刷新延迟信号 |
便捷函数
signal.connect(source, signal_name, callback)
连接信号到 Python 回调函数。
python
class MyObject: pass
source = MyObject()
def on_click():
log.info("UI", "按钮被点击了!")
signal.connect(source, "clicked", on_click)signal.emit(source, signal_name)
发射信号。
python
signal.emit(source, "clicked")signal.disconnect(source, signal_name)
断开指定信号的连接。
Callable 类
python
c = signal.Callable()| 方法 | 说明 |
|---|---|
is_valid() | 是否有效 |
call() | 调用 |