預設處理程式和後連線
訊號可以有一個預設的處理程式。你需要做的就是在宣告時給它一個正文。
public class Emitter : Object {
public signal void my_signal () {
print ("Hello from the default handler!\n");
}
}
這個處理程式將始終在 connect
ed 之後呼叫。但是如果要在預設值之後新增處理程式,則可以使用 connect_after
而不是 connect
。
var emitter = new Emitter ();
emitter.my_signal.connect_after (() => {
print ("After the default handler!\n");
});
emitter.my_signal ();