コールバック関数

前回のプログラムはウィンドウ左上のバツ印をクリックしてもプログラムが終了しませんでした。

そこで、コールバック関数を登録して、バツ印をクリックすればプログラムが終了するようにします。

/* gtk_test.c*/

#include<gtk/gtk.h>

int main(int argc, char *argv[]){
GtkWidget *window;

//gtk+を初期化
gtk_init(&argc, &argv);

//ウィンドウェジェットを作成
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);

//ウィンドウの大きさを指定
gtk_widget_set_size_request(window, 600, 400);

//ウィンドを閉じたときにプログラムを終了するようにコールバックする。
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);

//ウィンドウを表示
gtk_widget_show(window);

gtk_main();

return 0;
}