【Linux】GTK+圖形化應用程式開發學習筆記(一)—概述

來源:互聯網
上載者:User

 GTK+圖形化應用程式開發學習筆記(一)—概述

 

一、什麼是GNOME、

       GNOME的意思是“GNU Network Object Model Environment”(GNU網路物件模型環境),是Linux世界令人激動的軟體開發成果。雖然它的名字比較長,但這個軟體項目的目的卻很簡單,那就是實現一個永恒友好的、功能強大的使用者和開發案頭環境,而這一環境又完全是以免費的開原始碼軟體為基礎的。

      
正像它名字的那樣,GNOME既是一個案頭,也是一個完整的程式設計環境。GNOME是底層X視窗系統和高層管理器軟體中間的一個程式設計介面,它向GUI程式員提供了豐富的功能和強大的開發工具,這些工具是傳統意義上的Linux所缺乏的。

 

二、什麼是GIMP、GTK+

      GNOME中的基本工具包是GTK+(即GIMP工具包),它最初是為了簡化GIMP的開發工作而編寫出來的。

       GIMP是UNIX類作業系統上的影像處理常式。GIMP是通用影像處理常式或者GNU影像處理常式的縮寫。它的功能類似Windows的Photoshop。

GTK+是一個效能優異的、物件導向的、跨平台的、不依賴於具體語言的開發套件,在GNOME出現之前就已經大量地用來開發各種軟體程式了。GTK+能夠支援許多程式設計語言,其中包括C、C++、TOM、PERL、Python、GUILE、ADA等。

 

三、GTK+使用的庫

       GTK+使用GLIB庫和GDK(GIMP Drawing
Kit,GIMP繪圖工具包)系列的開發庫,GLIB定義了資料類型,提供了錯誤處理和記憶體管理方面的函數;而GDK則是本地圖形化API和GTK+中間的一個過渡層,它需要依賴具體的電腦平台。因此,向其他電腦平台上移植GTK+只需要重新編寫GDK。

 

四、GTK+的安裝

      
一般來說最新的Redhat完整安裝就帶GTK+工具庫了。大家直接可以在上面開發程式。如果當前系統沒有GTK+工具庫,可以到www.gtk.org.下載源碼安裝。具體安裝方法可以。參見CU上的GTK+
2.0安裝的文章,這裡不再敘述。

      
檢驗系統GTK+ 2.0的方法是

       $ pkg-config --modversion gtk+-2.0

五、使用GTK+工具集編寫程式

      
下面就是一個簡單的使用GTK+庫編寫的程式,目的是讓大家體驗到GTK+編程的樂趣。

/*base.c*/

#include <gtk/gtk.h>

                                                                                                                                            

int main(int argc, char* argv[])

{

GtkWidget *window;

    gtk_init(&argc,&argv);

    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    gtk_widget_show(window);

    gtk_main();

    return FALSE;

}

      
下面我們編譯它:      

$ gcc -o base base.c 'pkg-config --cflags --libs gtk+-2.0'

要注意的是pkg-config --cflags --libs gtk+-2.0旁邊兩個像單引號的東西其實不是單引號,它是數字鍵1左邊的符號。大家一定要注意。如果用單引號編譯器會提示你pkg-config
--cflags --libs gtk+-2.0沒有那個檔案或目錄。

下面我們來運行:

$./base

程式運行後會出現一個名字為base表單。

  
大家可以感覺到GTK+ 程式和普通的C語言程式沒什麼差別,它只不過是調用了GTK+工具庫。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.