C++ 是否按非字母顺序对GtkTreeView中的数据进行排序?

C++ 是否按非字母顺序对GtkTreeView中的数据进行排序?,c++,gtk,gtk2,C++,Gtk,Gtk2,我正在尝试对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_reo

我正在尝试对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

您可能还需要调用
来选择要排序的列。这使用了“排序列id”的概念,它与列索引不同。创建各个GtkTreeViewColumns时,需要使用设置正确的列id


可能是很好的阅读,以便更好地理解所涉及的概念。

GtkTreeSortable是否可以与gtk_tree_view_solumn_set_sort_column_id一起使用?@paultop6:是,这就是您指示排序的列的方式。@unwind:在尝试编译时,我收到了一些错误,您无法将GtkTreeViewColumn转换为GtkTreeSortable。我用我遇到问题的代码段更新了这个问题。注释掉的部分与问题有关。有没有办法将GtkTreeViewColumn强制转换为GtkTreeSortable?@paultop6:view column与GtkTreeSortable无关,它是由模型实现的接口,即GtkListStore(或GtkTreeModel,或自定义模型)我需要自定义排序的原因是我需要排序的数据也有单位,所以我需要先按单位排序,然后按字母顺序排序。