2012-02-08 171 views
0

我想在TreeView中创建排序列表。我知道用户可以通过点击列标题对内容进行排序。但是,如何以编程的方式来完成它(例如在其内容的每一个变化中)?如何以编程方式排序TreeView

回答

0

GtkTreeModelSort包装模型。

+0

谢谢你,但它仍然需要用户交互,这是手动点击标题。我是否应该发出这样的“头部点击信号”(如果有的话)来强制排序? – BornToCode 2012-02-09 05:13:41

+0

如果你调用['gtk_tree_sortable_set_column_id()'](http://developer.gnome.org/gtk/2.24/GtkTreeSortable.html#gtk-tree-sortable-set-sort-column-id),它仍然需要用户交互? – ptomato 2012-02-09 07:41:15

+0

好的,谢谢,它的工作原理:) – BornToCode 2012-02-10 03:31:06

0

例如:

void gtktreeview_sort_force(GtkTreeSortable *sortable) 
{ 
gint sort_column_id; 
GtkSortType order; 

gtk_tree_sortable_get_sort_column_id(sortable, &sort_column_id, &order); 
gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(sortable), GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID, order); 
gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(sortable), sort_column_id, order); 
} 
相关问题