談到glade,各位一定不陌生,我這樣的人在這里談論如何使用,實在是大有班門弄斧的感覺,還請各位多多指教。
前一段時間在solaris下開發一個界面基于gtk+的軟件,當然純粹是抱著玩玩的心情去搞的。用了一下glade發現還是很好用的,可惜網上關于這方面的資料不是很>多。無論是官方的,還是各個其他網站,關于他的使用方面的資料不是很多。官網上雖然也提供了相應的例子,但是代碼都太長了,很難讓人一下子就找到方向。>希望這幾篇文章能對想很快入門的人有所幫助。
Glade是一款通過使用gnome和gtk+庫幫助你創建GUI的應用軟件,你可以通過它生成你所創建的GUI的C、C++、Ada的源代碼;同樣你也可以聯合使用libglade和glade生成的xml文件來創建你的gui。
正如前面講得我們可以生成源代碼也可以直接使用生成的文件。
這里我們只將如何使用聯合使用libglade和xml文件(即.glade文件)
Start
現在讓我們開始我們的工程。
Create a GUI
首先創建一個gtk+工程,建立一個簡單的窗口后保存(我們先不做任何其他操作):
Write Code
在同一個project的文件夾下寫個相應的C程序,程序名字window.c。
程序如下:
? 1 #include <glade/glade.h>
? 2 #include <gtk/gtk.h>
? 3
? 4 int main(int argc, char **argv)
? 5 {
? 6
? 7???? GladeXML *window;
? 8
? 9???? gtk_init(&argc, &argv);
?10
?11???? window=glade_xml_new("project6.glade",NULL,NULL);
?12
?13???? glade_xml_signal_autoconnect(window);
?14
?15???? gtk_main();
?16
?17???? return 0;
?18 }
line?? 9??? ??? ??? ??? ??? 初始化gtk
line 11??? ??? ??? ??? ??? 載入glade文件中的接口,根據相應的需求做不同的改變,詳情參看libglade的文檔
line 13??? ??? ??? ??? ??? 連接相應的signal
line 15?? ??? ??? ??? ??? ? 開始gtk主循環
Compile
我們已經寫了相應的c程序,接下來就是編譯了
你可寫相應的makefile,不過這里由于程序相對比較小,沒必要了。
使用命令gcc `pkg-config --libs --cflags libglade-2.0` -o window glade.c -export-dynamic
注意具體的動態連接參數使ld而定,這里是-export-dynamic。詳情參看ld的manual。
Finished
ok,我們現在已經完成了這個幾乎沒有任何程序了,run it。
接下來該做點有意義的事了。
前一段時間在solaris下開發一個界面基于gtk+的軟件,當然純粹是抱著玩玩的心情去搞的。用了一下glade發現還是很好用的,可惜網上關于這方面的資料不是很>多。無論是官方的,還是各個其他網站,關于他的使用方面的資料不是很多。官網上雖然也提供了相應的例子,但是代碼都太長了,很難讓人一下子就找到方向。>希望這幾篇文章能對想很快入門的人有所幫助。
Glade是一款通過使用gnome和gtk+庫幫助你創建GUI的應用軟件,你可以通過它生成你所創建的GUI的C、C++、Ada的源代碼;同樣你也可以聯合使用libglade和glade生成的xml文件來創建你的gui。
正如前面講得我們可以生成源代碼也可以直接使用生成的文件。
這里我們只將如何使用聯合使用libglade和xml文件(即.glade文件)
Start
現在讓我們開始我們的工程。
Create a GUI
首先創建一個gtk+工程,建立一個簡單的窗口后保存(我們先不做任何其他操作):

Write Code
在同一個project的文件夾下寫個相應的C程序,程序名字window.c。
程序如下:
? 1 #include <glade/glade.h>
? 2 #include <gtk/gtk.h>
? 3
? 4 int main(int argc, char **argv)
? 5 {
? 6
? 7???? GladeXML *window;
? 8
? 9???? gtk_init(&argc, &argv);
?10
?11???? window=glade_xml_new("project6.glade",NULL,NULL);
?12
?13???? glade_xml_signal_autoconnect(window);
?14
?15???? gtk_main();
?16
?17???? return 0;
?18 }
line?? 9??? ??? ??? ??? ??? 初始化gtk
line 11??? ??? ??? ??? ??? 載入glade文件中的接口,根據相應的需求做不同的改變,詳情參看libglade的文檔
line 13??? ??? ??? ??? ??? 連接相應的signal
line 15?? ??? ??? ??? ??? ? 開始gtk主循環
Compile
我們已經寫了相應的c程序,接下來就是編譯了
你可寫相應的makefile,不過這里由于程序相對比較小,沒必要了。
使用命令gcc `pkg-config --libs --cflags libglade-2.0` -o window glade.c -export-dynamic
注意具體的動態連接參數使ld而定,這里是-export-dynamic。詳情參看ld的manual。
Finished
ok,我們現在已經完成了這個幾乎沒有任何程序了,run it。
接下來該做點有意義的事了。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
