在與應(yīng)用程序精靈對話結(jié)束之后,Anjuta 就開始建立您的應(yīng)用程序項目的目錄結(jié)構(gòu),運行參數(shù)配置腳本并建立應(yīng)用項目本身。整個創(chuàng)建過程的進(jìn)行情況顯示在 Anjuta 開發(fā)環(huán)境的下部。創(chuàng)建過程結(jié)束后,屏幕的左邊示出應(yīng)用項目樹結(jié)構(gòu)。這個樹結(jié)構(gòu)中包含您的源程序文件,說明文件和圖形文件。
現(xiàn)在是啟動 GLADE 并用其設(shè)計圖形用戶界面的時候了。請到菜單項 項目->編輯圖形界面 去運行 GLADE。您將看到三個窗口: 1) Glade 主窗口,2) 屬性窗口,and 3) 繪圖工具窗口。
取一個簡單的 GTK 視窗就行了。請點擊 Glade 主視窗上列出的第一項 (hello_app), 然后按 Del 刪除鍵?,F(xiàn)在到工具視窗(Palette),點擊第一個圖標(biāo)。這時一個空白的 GtkWindow 建起來了。這將是我們的應(yīng)用程序的主視窗 window1。再到屬性視窗(Properties),敲入標(biāo)題“Hello World!”?,F(xiàn)在再到工具視窗上選取一個表格(table)2行2列放到主視窗 window1 上。這樣,主視窗被切分為同等大小的4個部分。
現(xiàn)在再從工具視窗中取出兩個按鈕,分別加到主視窗下面的兩個框中。再把這兩個按鈕的名字和標(biāo)簽屬性設(shè)置如下:
左按鈕:
名字: BT_OK
標(biāo)簽: OK
右按鈕:
名字: BT_EXIT
標(biāo)簽: Exit
在視窗的上半部,左邊再加上一個標(biāo)簽控件;在上半部右邊加上一個輸入框 Entry 控件。該輸入框的名字取為 ENTRY。將上述標(biāo)簽控件的標(biāo)簽屬性置為 'What's your name, sir?'。
現(xiàn)在在屬性視窗的屬性檔(Signals tab)上把兩個按鈕都和Clicked事件連接起來。使用GLADE預(yù)設(shè)的反向調(diào)用函數(shù)名。請不要忘記點擊 Add 按鈕.這種常見的錯誤會導(dǎo)致產(chǎn)生空白的 callbacks.c 文件。在源文件callbacks.c上,我們將會通過 Anjuta界面加入源代碼。
現(xiàn)在,主視窗看起來似乎不那么漂亮。您可以試試改變視窗的寬度和高度,以及試試改改水平和垂直包容框的幾個屬性, 看看能不能讓視窗好看些。(注意:您可到菜單View,選擇控件樹,然后選擇控件。) 下面是一些屬性的設(shè)置:
*將下面的水平包容框的屬性 Homogeneous 置為Yes;
*將屬性視窗的定位檔的按鈕的屬性Fill 置為 Yes;
*將主視窗window1的屬性Grow置為No。
設(shè)計好界面后,在Glade主視窗上點擊“存盤”按鈕,然后再點擊“聯(lián)編”按鈕. 這就按您新設(shè)計的界面更新了您的 應(yīng)用項目的src目錄下的源文件 interface.c?,F(xiàn)在,讓我們選菜單 Project -> Exit,回到 Anjuta 用戶界面下。開始編程啦!
編輯程序
現(xiàn)在回到 Anjuta 環(huán)境中來,您應(yīng)該可以在屏幕左邊的項目源程序列表中看到 callbacks.c. 雙點擊打開該程序. 這樣我們在Anjuta集成開發(fā)環(huán)境的左邊就可以編輯該程序了。
有時一事物如果是有色彩的話就會變得更容易理解、更有趣。Anjuta 的“語法強(qiáng)調(diào)色”功能 (在“Format”菜單上)就屬于這種情況. Anjuta還有很多很多有用的功能,您可以慢慢品玩。也許現(xiàn)在花點時間熟悉熟悉這個集成環(huán)境是很有好處的。
現(xiàn)在回到 callbacks.c 文件,我們看到兩個反向調(diào)用函數(shù): on_BT_OK_clicked 和on_BT_EXIT_clicked. 讓我們在第二個函數(shù)中加入一個函數(shù)調(diào)用:gtk_main_quit()。這樣,該函數(shù)變成:
#ifdef HAVE_CONFIG_H
#include
#endif
#include
#include "callbacks.h"
#include "interface.h"
#include "support.h"
void on_BT_OK_clicked(GtkButton *button, gpointer user_data)
{
gtk_main_quit();
}
這個函數(shù)調(diào)用的目的是當(dāng)用戶點擊退出按鈕時,整個應(yīng)用程序會結(jié)束。與此相仿,我們在 on_BT_OK_clicked函數(shù)中加入下列函數(shù)調(diào)用:
void on_BT_OK_clicked (GtkButton *button, gpointer user_data)
{
GtkWidget *entry = lookup_widget (GTK_WIDGET(button), "entry");
GtkWidget *msgbox = gnome_app_new("Hello World", "Hello World");
gchar *text1, *text2;
text1 = gtk_entry_get_text (GTK_ENTRY(entry));
text2 = strcat ("Hello, ", text1);
gnome_app_message (GNOME_APP(msgbox), text2);
}
生成目標(biāo)代碼,執(zhí)行,以及發(fā)行。
現(xiàn)在到了測試您程序的時候了;這一定很有趣。先選擇菜單項創(chuàng)建->創(chuàng)建項目。這時Anjuta就開始編譯和鏈接項目里的源程序main.c, interface.c, support.c and callbacks.c,然后將產(chǎn)生的可執(zhí)行文件hello放到 src 目錄。編譯器一般會用 gcc。
評論
查看更多