這個範例是從Linux 視窗程式設計-使用GTK+ 與 Qt找到的範例
#include <gtk/gtk.h>
gint main(gint argc,gchar *argv[])
{
GtkWidget *window,*button;
gtk_set_locale();
gtk_init(&argc,&argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window),"嗨!GTK+");
gtk_window_set_default_size(GTK_WINDOW(window),140,40);
gtk_signal_connect(GTK_OBJECT(window),"destory",GTK_SIGNAL_FUNC(gtk_main_quit),NULL);
button = gtk_button_new_with_label("hello!您好");
// button = gtk_label_new("hello");
gtk_container_add(GTK_CONTAINER(window),button);
gtk_widget_show_all(window);
gtk_main();
g_print("byen");
return(0);
}
不過課本的有一點小錯誤,已經用紅色字型標註!
類似的範例應該可以再很多地方找到,但是我注意到作者有另外一個註解,滿重要的,『程式中以GTK+的gtk_xxx_new_這一類函式產生的物件,在應用程式結束時,會自動將這些物件所配置的記憶體清除,我們不必去清除它,也不用煩惱記憶體斷層(leak)』,不過memory leak好像很多人都翻為記憶體洩漏,所以就看各人喜好了!
處理流程如下: