【正文】
} Gnome程序開發(fā)( 7) ? define gtk_signal_connect(object,name,func,func_data) Attaches a function pointer and user data to a signal for a particular object. The GtkSignalFunction takes a GtkObject as its first parameter. It will be the same object as the one you39。 gtk_main()。 gtk_container_add(GTK_CONTAINER(app),button)。 gtk_signal_connect(GTK_OBJECT(app),delete_event,GTK_SIGNAL_FUNC( gtk_main_quit),NULL)。 app=gtk_window_new(GTK_WINDOW_TOPLEVEL)。argc,amp。 GtkWidget *button。 ? 見程序 include gtk/ static void button_clicked(GtkWidget *button,const char *data) { g_print(data)。 } Gnome程序開發(fā)( 6) ? 第二個例子程序。 gtk_main()。 app=gnome_app_new(example,Window Title)。演示 include int main(int argc,char *argv[]) { GtkWidget *app。演示 Gnome程序的主要框架。 ? 最下面的一層是 Glib,它是 C的一個實(shí)用程序庫,包括可移植性和一些實(shí)用程序功能,以及一些容器類,例如,鏈表,可變數(shù)組等有用結(jié)構(gòu)。大多數(shù) GUI是直接用 GTK編寫的,它同時為 Gnome庫提供了一個功能強(qiáng)大的對象系統(tǒng)。 ? 第二層是 GTK庫,它是 GTK+的一部分。 GDK是 Xlib的一個底層包裝。 Gnome中最基本的工具包是 GTK+ ( GIMP ToolKit ),它由兩部分組成: GTK和 GDK( GIMP Drawing Kit)。 從用戶的角度看,它是一個集成的桌面環(huán)境以及應(yīng)用程序集合; 從開發(fā)人員的角度看,它是一個應(yīng)用程序的基礎(chǔ)開發(fā)結(jié)構(gòu)。沒有 Qt的那些限制。 Gnome使用的工具包是 GTK+。 ? return ()。 ? (button)。 ? QObject::connect(button, SIGNAL(clicked()), amp。 ? QPushButton *button=new QPushButton( Hello world!, 0 )。 ? return ()。button)。 ? QPushButton button(Hello