一千萬個為什麽

搜索

在GtkTreeView中按字母順序排序數據?

我正在嘗試按字母順序對GTK樹視圖中的一列數據進行排序。我似乎無法在GTK +庫中找到一個不能做這樣的功能。

有沒有人知道這樣做的方法?

更新:

以下是我目前正在嘗試使用的代碼:

column = gtk_tree_view_column_new();

gtk_tree_view_column_set_title(column, "Memory");

gtk_tree_view_column_set_resizable(column, TRUE);
gtk_tree_view_column_set_reorderable(column, TRUE);
gtk_tree_view_column_set_sort_indicator(column, TRUE);
/**********************************************************
gtk_tree_view_column_set_sort_column_id(column, 3);
gtk_tree_sortable_set_sort_column_id(column, 3, GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID);
**********************************************************/

gtk_tree_view_append_column(GTK_TREE_VIEW(rendered_view), column);

c_renderer = gtk_cell_renderer_text_new();

gtk_tree_view_column_pack_start(column, c_renderer, TRUE);

gtk_tree_view_column_add_attribute(column, c_renderer, "text", MEMORY);

最佳答案

請參閱 GtkTreeSortable 界面,該界面允許您可以設置自定義排序功能。

請註意常用的標準 GtkListStore model實現了GtkTreeSortable。

您可能還需要調用 gtk_tree_sortable_set_sort_column_id() 以選擇要排序的列。這使用“sort column id”的概念,它與列索引不同。使用 gtk_tree_view_column_set_sort_column_id()

This tutorial might be good reading, to get a better understanding of the concepts involved.

轉載註明原文: 在GtkTreeView中按字母順序排序數據?