Time of Update: 2018-12-03
提供選中區提供選中區要複雜一點。你必須註冊當選中區被要求時將調用的處理函數。每處理一對選中區/目標,你就要調用一次下面的函數:void gtk_selection_add_target (GtkWidget *widget, GdkAtom selection, GdkAtom target,
Time of Update: 2018-12-03
在 GtkComboBox
Time of Update: 2018-12-03
拖放GTK+ 有一套進階的用來支援圖形程式之間通過拖放系統傳遞資訊的函數。GTK+ 能在低級的 Xdnd 和 Motif 拖放協議基礎上實施拖放。概述一個支援 GTK+ 拖放的應用程式先要定義和設定能拖放的構件。每個構件都可以是拖放的來源端和/或目標端。注意這些構件必須有一個關聯的 X 視窗,用 GTK_WIDGET_NO_WINDOW(widget)
Time of Update: 2018-12-03
在進行元件排版的時候,將元件以類似表格的方式排放也是很常見的排版方式,在GTK中,您可以使用GtkTable,您可以使用gtk_table_new()函式來建立:GtkWidget *table = gtk_table_new(3, 3,
Time of Update: 2018-12-03
GtkComboBox 與 GtkListStore中介紹了平坦無階層的選項如何製作,若想要製作有階層的樹狀結構,則要搭配GtkTreeStore來使用,主要的差別在於,GtkTreeStroe具有父子節點關係,也因此在加入子節點時,必須指明父節點為誰,加入節點可以使用gtk_tree_store_append()函式,設定節點資料可以使用gtk_tree_store_set()函式:void gtk_tree_store_append(GtkTreeStore *tree_store,
Time of Update: 2018-12-03
屬性拖動資料有下面的這些屬性: 拖動行為類型(比如 GDK_ACTION_COPY, GDK_ACTION_MOVE)。 用戶端指定的任意拖放類型(一個名稱和數字組成的對)。
Time of Update: 2018-12-03
在看這篇之前,請先看過 GtkComboBox 以及 GtkComboBox 與 GtkListStore,由於以Model-View的方式設計,您可以在不修改Model的情況下,為Model換上另一個顯示的外觀(View),例如為 GtkComboBox 與 GtkListStore
Time of Update: 2018-12-03
GTK+ 2.0 Tree View TutorialGTK+ 2.0 Tree View TutorialTim-Philipp M黮ler This is a tutorial on how to use the GTK (the GIMP Toolkit) GtkTreeView widget through its C interface. Please mail all comments and
Time of Update: 2018-12-03
有了 GtkTreeView 與GtkListStore 的基礎,要在GtkTreeView搭配GtkTreeStore就沒什麼好解釋的了,下面這個範例,只是將 GtkTreeView 與GtkListStore 範例中的createModel()函式,換成 GtkComboBox與 GtkTreeStore 中的createModel()函式,剩下的都沒有改變,也就是為 GtkComboBox與 GtkTreeStore
Time of Update: 2018-12-03
在執行緒的同步化時,有些條件下執行緒必須等待,有些條件下則不用,這可以使用GCond來達到。例如在生產者(Producer)與消費者(Consumer)的例子中,如果生產者會將產品交到倉庫,而消費者從倉庫取走產品,倉庫一次只能持有固定數量產品,如果生產者生產了過多的產品,倉庫叫生產者等一下(wait),如倉庫中有空位放產品了再發信號(signal)通知生產者繼續生產,如果倉庫中沒有產品了,倉庫會告訴消費者等一下(wait),如果倉庫中有產品了再發信號(signal)通知消費者來取走產品。以下舉一
Time of Update: 2018-12-03
GLibGlib 是一種底層庫,建立 GDK 和 GTK 應用程式時該庫可提供許多有用的定義和函數。它們包括基本類型及限制的定義、標準宏、類型轉換、位元組序、儲存分配、警告和斷言、訊息記錄、計時器、字串工具 (string utilities)、掛鈎 (hook) 函數、一個句法掃描器、動態載入模組和自動字串補全,它也定義了許多資料結構(及其相應的操作),包括儲存塊、雙向鏈表、單向鏈表、雜湊表、串(動態增長)、串塊(串的組)、數組(大小可隨元素的加入而增長)、平衡二叉樹、N 叉樹、夸克
Time of Update: 2018-12-03
雙向鏈表以下的函數用於建立、管理和銷毀標準雙向鏈表。鏈表中每個元素都包含一塊資料和指向前後元素的指標。這使得通過鏈表的雙向移動變的容易。資料項目的類型是"gpointer",意指資料可為一指向實際資料的指標或 (通過類型轉換) 為一數值(但不要設想 int 和 gpointer有相同的大小!)。這些函數在內部按塊為鏈表元素分配空間,這比單為每個元素分配空間更有效率。不存在專用於建立鏈表的函數。而是簡單地建立一個類型為 Glist* 的變數,並把它的值設定為
Time of Update: 2018-12-03
為了連結一個事件Signal與Callback函式,一樣是使用g_signal_connect()函式,不過處理事件Signal的Callback函式與純綷的GTK Signal的Callback函式在宣告時有些不同,以下是處理事件Signal的Callback函式宣告方式:gboolean callback_func( GtkWidget *widget, GdkEvent *event, gpointer callback_data);
Time of Update: 2018-12-03
GTK+ / Gnome Application Development GTK+ / Gnome Application Development Havoc Pennington Red Hat Advanced Development Labs New Riders Publishing 0-7357-0078-8
Time of Update: 2018-12-03
單向鏈表以上的許多函數用於單向鏈表是一樣的。下面是鏈表操作函數的部分列表:GSList *g_slist_append( GSList *list, gpointer data );GSList *g_slist_prepend( GSList *list, gpointer data );GSList *g_slist_insert( GSList *list,
Time of Update: 2018-12-03
事件遮罩決定了一個Widget會接收到哪些事件,不同的Widget會有不同預設的事件遮罩,您可以使用gtk_widget_set_events()來設定事件遮罩:void gtk_widget_set_events(GtkWidget *widget, gint events);
Time of Update: 2018-12-03
中文版說明Table 1. 本手冊是由志願者翻譯完成,中文版著作權歸各位譯者所有:IDE-mail所譯章節cartoncarton@linux.net.cn1ddd 20ferryy0f0@21cn.com18,19huzhengforlinux@263.net5,7,8,9,10,11,16,17tinglefunting@163.net4konghuikonghui@xinhuanet.com2,3,6,12,13,14,15,21,附錄ABCyang_yiyang_yi_cn@yahoo.
Time of Update: 2018-12-03
設計視窗程式的人都知道,在視窗程式中最麻煩也最難的就是版面配置,每次都為了元件的位置擺放在傷腦筋,目前為止在 自訂 callback 函式
Time of Update: 2018-12-03
GtkFrame也是GtkContainer的子類,可以容納其它Widget,並呈現出以下的外觀(圖片取自 GtkFrame 檔案): 要建立GtkFrame,並將元件置於其中,基本上是如下的程式碼片段:GtkWidget *gtkFrame = gtk_frame_new("GtkHButtonBox");gtk_container_add(GTK_CONTAINER(gtkFrame), hbuttonBox);GtkButtonBox則是一個可以容納按鈕群組的不可視版面配置元件,
Time of Update: 2018-12-03
簡介GTK (GIMP Toolkit) 是一套用於建立圖形化使用者介面的工具包。它遵循 LGPL 許可證,所以你可以用它來開發開源軟體、自由軟體,甚至是封閉原始碼的商業軟體,而不用花費任何錢來購買許可證和使用權。GTK 被稱為 GIMP 工具包是因為最初寫它是用來開發 GIMP (GNU 影像處理程式) 的,但是它現在已經被用於很多軟體項目了,包括 GNOME (GNU 網路物件模型環境)。GTK 是在 GDK (GIMP Drawing Kit) 和 gdk-pixbuf