簡體   English   中英

GTK:回調函數簽名概述

[英]GTK: Overview of callback function signatures

在GTK2應用程序中,當某些事件發生時,可以調用用戶定義的回調函數,例如:

static void on_destroy(GtkObject* o) {
    gtk_main_quit();
}

int main(int argc, char * argv[]) {
    ...    
    g_signal_connect(window1, "destroy", G_CALLBACK(on_destroy), NULL);
    ...
}

回調函數的簽名取決於信號或事件的類型。 我一直在尋找這些簽名的簡要概述,並且在GTK + 2.0教程中找到了有關信號章節 但是,它似乎缺少了GtkTreeview信號的回調簽名,例如row-activatedselect-cursor-row等。

是否有其他來源描述所有回調簽名的正確實現,最好是在簡潔的概述中,而不是分散在幾章中?

您應該查看Gtk + 2參考手冊

例如,在您的示例中連接的銷毀信號來自GtkWindow父類之一GtkObject

“破壞”信號

void user_function (GtkObject *object, gpointer user_data)

檢查“樹”,“列表小部件”以獲取相關信號和相應的原型:

https://developer.gnome.org/gtk2/stable/TreeWidgetObjects.html

注意:父類並不意味着多重繼承,而只是繼承層次中位於上方的一個類。

您需要學習如何使用官方幫助。 在每個小部件幫助頁面上,頂部都有一個導航欄。 在這里,您可以直接鏈接到信號,對象層次結構(父類)等。

因此,如果您正在尋找小部件的特定信號,則只需轉到該小部件幫助頁面,然后單擊導航欄中的“信號”鏈接即可。 如果信號不存在,則它必須在父類中。 因此,您單擊“對象層次結構”鏈接,該鏈接將您帶到小部件的繼承樹。 您單擊其父級,然后再次搜索該信號。

或者,您可以安裝Linux發行版(或Windows的MSYS2)中隨附的devhelp幫助瀏覽器。 有一個搜索字段,您可以在其中鍵入要查找的符號的名稱,包括信號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM