日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GTK重拾--00

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GTK重拾--00 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

(一):寫在前面

從現在開始,我準備學習GTK+2.0庫進行linux下的界面程序開發.從我們程序員的角度來講,接觸到的第一個程序肯定是Hello World.所以,我們現在就從Hello World學起.在這里僅僅是構建了一個GTK+的空白窗口,主要的目的是先感受一下GTK+的開發,既然他是一個程序庫,之前我又有過QTGui方面的開發經驗,估計學習起來應該不是很費勁.

(二):初識GTK+

1:什么是GTK+

GTK+或者是稱作GIMP套件,是一個創建圖形用戶接口的多平臺工具套件.GTK+提供了一套完整的組件庫,無論是小工具的開發還是一個大型應用的開發都是非常合適的.

2:可以在哪里使用

任何地方都可以使用GTK+.只要你的平臺上安裝有GTK+的圖形庫,就可以在任何平臺上進行GTK+的開發和使用.GTK+是跨平臺的,它提供了簡單易用的API來加速你的開發時間.下面我們來看一下官網上提供的使用GTK+開發的程序的截圖:

3:GTK+支持的語言

GTK+雖然使用C編寫,但是他現在已經被設計支持很多編程語言,不僅僅是C/C++.下面我們來看一下GTK+鎖支持的語言列表:

4:GTK+進一步了解

GTK+是一個部件工具包.他是由C語言開發,使用GObject,一個用于C的面向對象的框架實現的.組件是在一個層次被組織的.窗口組件是主容器.用戶接口是隨后通過向窗口中添加按鈕,下拉菜單,輸入框和其他組件構建的.如果擬正在創建一個復雜的用戶結構,推薦你使用GtkBuilder和他對用的GTK專用的標記描述語言,而不是手動的嵌入到接口中.你可以使用一個可視化的用戶接口編輯器,就像Glade.

GTK是事件驅動的.套件監聽事件,例如在一個按鈕上的點擊事件,并將事件傳遞到你的應用中.在開發GTK+應用程序之前,我們需要安裝GTK+2.0的以來和庫函數.

(三):Hello World

下面我們就需要新建一個C程序來編寫一個最簡單的GTK+程序.

1:新建一個hello.c文件
2:包含我們構建GTK+程序需要的頭文件gtk/gtk.h
3:初始化整個GTK+程序
4:添加窗口
5:顯示窗口
6:進入主循環

下面我們來看一下我們的代碼:

#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);// 相當于讓程序進入主循環,等待事件的發生gtk_main();return 0; }

(四):編譯GTK+程序

當然,編譯就比較簡單了,使用GCC工具就可以編譯.不過在這里需要一個工具,那就是pkg-config,他會為自動編譯提供需要的include文件.好了,那么我們就使用下面的命令來編譯我們的程序:

gcc hello.c -o hello `pkg-config --libs --cflags gtk+-2.0`

注意,這里將pkg-config引起來的是反引號.

(五):運行程序

編譯完成之后我們就可以直接使用下面的命令來運行我們的程序:

./hello

這樣,程序就成功運行了,我們來看一下運行的效果:

(六):寫在后面

與其臨淵羨魚,不如退而結網。

我的代碼已經上傳到我的github,大家可以下載:
GTKGame源碼下載

轉載于:https://www.cnblogs.com/bobo1223/p/7287498.html

總結

以上是生活随笔為你收集整理的GTK重拾--00的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。