預設處理程式和後連線

訊號可以有一個預設的處理程式。你需要做的就是在宣告時給它一個正文。

public class Emitter : Object {
    public signal void my_signal () {
        print ("Hello from the default handler!\n");
    }
}

這個處理程式將始終在 connected 之後呼叫。但是如果要在預設值之後新增處理程式,則可以使用 connect_after 而不是 connect

var emitter = new Emitter ();
emitter.my_signal.connect_after (() => {
    print ("After the default handler!\n");
});
emitter.my_signal ();