GTK重拾--00
(一):寫在前面
從現(xiàn)在開始,我準備學習GTK+2.0庫進行l(wèi)inux下的界面程序開發(fā).從我們程序員的角度來講,接觸到的第一個程序肯定是Hello World.所以,我們現(xiàn)在就從Hello World學起.在這里僅僅是構(gòu)建了一個GTK+的空白窗口,主要的目的是先感受一下GTK+的開發(fā),既然他是一個程序庫,之前我又有過QTGui方面的開發(fā)經(jīng)驗,估計學習起來應(yīng)該不是很費勁.
(二):初識GTK+
1:什么是GTK+
GTK+或者是稱作GIMP套件,是一個創(chuàng)建圖形用戶接口的多平臺工具套件.GTK+提供了一套完整的組件庫,無論是小工具的開發(fā)還是一個大型應(yīng)用的開發(fā)都是非常合適的.
2:可以在哪里使用
任何地方都可以使用GTK+.只要你的平臺上安裝有GTK+的圖形庫,就可以在任何平臺上進行GTK+的開發(fā)和使用.GTK+是跨平臺的,它提供了簡單易用的API來加速你的開發(fā)時間.下面我們來看一下官網(wǎng)上提供的使用GTK+開發(fā)的程序的截圖:
3:GTK+支持的語言
GTK+雖然使用C編寫,但是他現(xiàn)在已經(jīng)被設(shè)計支持很多編程語言,不僅僅是C/C++.下面我們來看一下GTK+鎖支持的語言列表:
4:GTK+進一步了解
GTK+是一個部件工具包.他是由C語言開發(fā),使用GObject,一個用于C的面向?qū)ο蟮目蚣軐崿F(xiàn)的.組件是在一個層次被組織的.窗口組件是主容器.用戶接口是隨后通過向窗口中添加按鈕,下拉菜單,輸入框和其他組件構(gòu)建的.如果擬正在創(chuàng)建一個復(fù)雜的用戶結(jié)構(gòu),推薦你使用GtkBuilder和他對用的GTK專用的標記描述語言,而不是手動的嵌入到接口中.你可以使用一個可視化的用戶接口編輯器,就像Glade.
GTK是事件驅(qū)動的.套件監(jiān)聽事件,例如在一個按鈕上的點擊事件,并將事件傳遞到你的應(yīng)用中.在開發(fā)GTK+應(yīng)用程序之前,我們需要安裝GTK+2.0的以來和庫函數(shù).
(三):Hello World
下面我們就需要新建一個C程序來編寫一個最簡單的GTK+程序.
1:新建一個hello.c文件
2:包含我們構(gòu)建GTK+程序需要的頭文件gtk/gtk.h
3:初始化整個GTK+程序
4:添加窗口
5:顯示窗口
6:進入主循環(huán)
下面我們來看一下我們的代碼:
#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_show(window);// 相當于讓程序進入主循環(huán),等待事件的發(fā)生gtk_main();return 0; }(四):編譯GTK+程序
當然,編譯就比較簡單了,使用GCC工具就可以編譯.不過在這里需要一個工具,那就是pkg-config,他會為自動編譯提供需要的include文件.好了,那么我們就使用下面的命令來編譯我們的程序:
gcc hello.c -o hello `pkg-config --libs --cflags gtk+-2.0`注意,這里將pkg-config引起來的是反引號.
(五):運行程序
編譯完成之后我們就可以直接使用下面的命令來運行我們的程序:
./hello這樣,程序就成功運行了,我們來看一下運行的效果:
(六):寫在后面
與其臨淵羨魚,不如退而結(jié)網(wǎng)。
我的代碼已經(jīng)上傳到我的github,大家可以下載:
GTKGame源碼下載
轉(zhuǎn)載于:https://www.cnblogs.com/bobo1223/p/7287498.html
總結(jié)
- 上一篇: 酷友观点/经验:支付接口返回数据接收地址
- 下一篇: [C++ Mind Map] class