转贴一个很好的GTK+学习笔记
2010-12-08 12:52
267 查看
GTK
(Gimp ToolKit)
原
本來影像處理軟體 GIMP(GNU Image Manipulation
Program
) 的開發工具箱,後來成為一個跨平台的圖形介面開發套件,GTK 基於 C 語言,但不限於使用 C
語言,您也可以使用
C++、Java、PHP、Perl、Python、Ruby 等語言來撰寫 GTK 程式(參考 Language
Bindings
), 這邊的文件將記錄一些 GTK+
的心得,所使用的環境為
Ubuntu 10.10。
入門
先來嘗試一下幾個簡單的 GTK 程式,並初步了解一些核心特性。
Hello!World! Orz..
第一步,當然是先
克服 GTK 的安裝問題,然後來個簡單的 Hello!World! Orz...
Ubuntu
下安裝
GTK
第一
個 GTK 程式
Windows
下第一個 GTK 程式
GTK
的物件導向架構
Signal 與 Callback
在 GTK
的元件上操作,會發出特定的 Signal ,將 Signal 連接至特定的 Callback 函式,以完成對某個動作的處理。
使
用 Signal 關閉視窗
自
訂 callback 函式
內
建 Signal 的發射與停止
事件處理
GDK
事件會傳播給 GtkWidget,引發一個與
事件
相
對應的事件 Signal,再透過 Callback 函式處理事件。
GDK
事件結構
GTK
事件處理函式
事
件遮罩(Event Mask)
基本版面配置
基本上就是透過水
平與垂直包裝盒,將元件置於其中以完成所需的版面配置。
GtkHBox
與 GtkVBox
GtkFrame
與 GtkButtonBox
GtkTable
其它
GTK
官方網站上,有許多的參考文件與範例,為入門時的必看資料。
GTK
參考文件
簡介
Glade
基本圖形元件
元件講是講不完的,這邊
主要在
簡介幾個
基本元件之作用。
按鈕
按鈕是視窗
程式中最基本的元件。
GtkButton
與 GtkToggleButton
影
像及文字按鈕
GtkCheckButton
與 GtkRadioButton
對話方塊
對話方塊用來與使
用者作簡單的訊息交換與溝通。
GtkMessageDialog
GtkAboutDialog
GtkColorButton
與
GtkColorSelectionDialog
GtkFontButton
與
GtkFontSelectionDialog
GtkFileChooserButton
與
GtkFileChooserDialog
使
用 GtkDialog 自訂對話方塊
文字欄位
文字欄位是使用者
輸入資訊的基本元件。
GtkEntry
GtkSpinButton
GtkTextView
選項
清單
這邊的選項清單元
件,遵守 MVC 設計,使用上較為複雜但應用彈性大。
GtkComboBox
GtkComboBox
與 GtkListStore
GtkComboBox
與 GtkTreeStore
GtkTreeView 與
GtkListStore
GtkTreeView 與
GtkTreeStrore
版面元件
除了上面介紹的三
種基本版面配置之外,還可以使用一些版面元件來協助元件的群組與版面的切割。
GtkNotebook
GtkPaned
GtkScrolledWindow
GtkAlignment、
GtkFixed 與 GtkLayout
GtkFrame
與 GtkAspectFrame
進階元件
使用
來看看一些選單、列、等元件之使用與組合方式,以及繪圖、列印等功能。
選單元件
選單是視窗程式最
常見的功能了。
GtkHandleBox
GtkMenuBar、
GtkMenu 與 GtkMenuItem
GtkCheckMenuItem、
GtkRadioMenuItem 與
GtkTearoffMenuItem
GtkUIManager
列元件
進度列、工具列、
狀態列。
GtkProgressBar
GtkToolBar
GtkStatusBar
其它元件
簇繁不及備
載...Orz...
GtkStyle
與資源檔
GtkLabel
GtkScale
GtkEntryCompletion
GtkArrow
GtkRuler
GtkAssistant
GtkCalendar
GtkDrawingArea
GLib
GLib 是
GTK 所需的函式庫之一,不過它是個可獨立使用的函式庫。
基本型態、巨集、公用(Utility)函式
一些有的沒的常用
函式,先放在一起講......Orz
GLib
基本型態與巨集
GTimer
Timeout
與 Idle
環
境資訊
日誌
(Logging)
輸入輸出
來了解一些基本檔
案讀寫、目錄資訊的取得方式,以及輸入輸出 Channel 的使用。
基
本檔案讀寫
目錄資訊
GIOChannel
與 檔案處理
GIOChannel
與 Pipe
資料結構、記憶體配置
來看看
GLib 提供了哪些常用的資料結構處理及動態記憶體配置函式。
GString
GArray、GPtrArray、
GByteArray
GSList、
GList
GHashTable
GTree
與 GNode
記
憶體配置
執
行緒
GLib
提供了 GThread 作為多執行緒的支援。
GThread
GMutex
GCond
附錄
GTK+
2.0 Tutorial
GTK+
Reference Manual
GTK+
/ Gnome Application Development
GTK+
and Glade3 GUI Programming Tutorial
GTK+
2.0 Tree View Tutorial
(Gimp ToolKit)
原
本來影像處理軟體 GIMP(GNU Image Manipulation
Program
) 的開發工具箱,後來成為一個跨平台的圖形介面開發套件,GTK 基於 C 語言,但不限於使用 C
語言,您也可以使用
C++、Java、PHP、Perl、Python、Ruby 等語言來撰寫 GTK 程式(參考 Language
Bindings
), 這邊的文件將記錄一些 GTK+
的心得,所使用的環境為
Ubuntu 10.10。
入門
先來嘗試一下幾個簡單的 GTK 程式,並初步了解一些核心特性。
Hello!World! Orz..
第一步,當然是先
克服 GTK 的安裝問題,然後來個簡單的 Hello!World! Orz...
Ubuntu
下安裝
GTK
第一
個 GTK 程式
Windows
下第一個 GTK 程式
GTK
的物件導向架構
Signal 與 Callback
在 GTK
的元件上操作,會發出特定的 Signal ,將 Signal 連接至特定的 Callback 函式,以完成對某個動作的處理。
使
用 Signal 關閉視窗
自
訂 callback 函式
內
建 Signal 的發射與停止
事件處理
GDK
事件會傳播給 GtkWidget,引發一個與
事件
相
對應的事件 Signal,再透過 Callback 函式處理事件。
GDK
事件結構
GTK
事件處理函式
事
件遮罩(Event Mask)
基本版面配置
基本上就是透過水
平與垂直包裝盒,將元件置於其中以完成所需的版面配置。
GtkHBox
與 GtkVBox
GtkFrame
與 GtkButtonBox
GtkTable
其它
GTK
官方網站上,有許多的參考文件與範例,為入門時的必看資料。
GTK
參考文件
簡介
Glade
基本圖形元件
元件講是講不完的,這邊
主要在
簡介幾個
基本元件之作用。
按鈕
按鈕是視窗
程式中最基本的元件。
GtkButton
與 GtkToggleButton
影
像及文字按鈕
GtkCheckButton
與 GtkRadioButton
對話方塊
對話方塊用來與使
用者作簡單的訊息交換與溝通。
GtkMessageDialog
GtkAboutDialog
GtkColorButton
與
GtkColorSelectionDialog
GtkFontButton
與
GtkFontSelectionDialog
GtkFileChooserButton
與
GtkFileChooserDialog
使
用 GtkDialog 自訂對話方塊
文字欄位
文字欄位是使用者
輸入資訊的基本元件。
GtkEntry
GtkSpinButton
GtkTextView
選項
清單
這邊的選項清單元
件,遵守 MVC 設計,使用上較為複雜但應用彈性大。
GtkComboBox
GtkComboBox
與 GtkListStore
GtkComboBox
與 GtkTreeStore
GtkTreeView 與
GtkListStore
GtkTreeView 與
GtkTreeStrore
版面元件
除了上面介紹的三
種基本版面配置之外,還可以使用一些版面元件來協助元件的群組與版面的切割。
GtkNotebook
GtkPaned
GtkScrolledWindow
GtkAlignment、
GtkFixed 與 GtkLayout
GtkFrame
與 GtkAspectFrame
進階元件
使用
來看看一些選單、列、等元件之使用與組合方式,以及繪圖、列印等功能。
選單元件
選單是視窗程式最
常見的功能了。
GtkHandleBox
GtkMenuBar、
GtkMenu 與 GtkMenuItem
GtkCheckMenuItem、
GtkRadioMenuItem 與
GtkTearoffMenuItem
GtkUIManager
列元件
進度列、工具列、
狀態列。
GtkProgressBar
GtkToolBar
GtkStatusBar
其它元件
簇繁不及備
載...Orz...
GtkStyle
與資源檔
GtkLabel
GtkScale
GtkEntryCompletion
GtkArrow
GtkRuler
GtkAssistant
GtkCalendar
GtkDrawingArea
GLib
GLib 是
GTK 所需的函式庫之一,不過它是個可獨立使用的函式庫。
基本型態、巨集、公用(Utility)函式
一些有的沒的常用
函式,先放在一起講......Orz
GLib
基本型態與巨集
GTimer
Timeout
與 Idle
環
境資訊
日誌
(Logging)
輸入輸出
來了解一些基本檔
案讀寫、目錄資訊的取得方式,以及輸入輸出 Channel 的使用。
基
本檔案讀寫
目錄資訊
GIOChannel
與 檔案處理
GIOChannel
與 Pipe
資料結構、記憶體配置
來看看
GLib 提供了哪些常用的資料結構處理及動態記憶體配置函式。
GString
GArray、GPtrArray、
GByteArray
GSList、
GList
GHashTable
GTree
與 GNode
記
憶體配置
執
行緒
GLib
提供了 GThread 作為多執行緒的支援。
GThread
GMutex
GCond
附錄
GTK+
2.0 Tutorial
GTK+
Reference Manual
GTK+
/ Gnome Application Development
GTK+
and Glade3 GUI Programming Tutorial
GTK+
2.0 Tree View Tutorial
相关文章推荐
- 一个女孩的职场经历(转贴 写得很好 很好 很好)
- 【转贴】一个很好的detailsview的例子
- 一个前端学习的很好的网站
- 一个很好的android学习网站,全是一些实用的例子
- 一个很好,很实用,学习android xml布局文件
- 转贴:如何规划一个高容量的Apache服务器?
- 推荐一个很好用的网络U盘(金山快盘),最大容量可以达到5.6G
- 发现一个很好用的邮箱群发邮件工具(奇奇邮箱群发器.zip)
- 【转贴】Scott Mitchell 的ASP.NET 2.0数据教程之一: 创建一个数据访问层
- 怎样很好的描述一个BUG
- FCKEditor,一个HTML可视化编辑器,兼容很好
- 一个很好用的图形显示控件(可以用于实时采集的图像显示)
- 介绍一个很好用的图片浏览插件iviewer
- 一个很好用的工具firebug
- 一个很好的java相关的学习网站(易佰教程)
- 一个不喝中国水的日本人 [转贴 ]
- 使用myeclipse集成struts,hibernate,spring的一个示例程序(转贴)
- 一个很好的网站 www.atwop.com
- (转贴)共享一个通用的数据访问类
- 一个年轻董事长给大学生18条很好的建议