1

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);
4

1 に答える 1

2

GtkTreeSortableカスタムソート機能を設定できるインターフェイスを参照してください。

一般的に使用される標準GtkListStoreモデルが GtkTreeSortable を実装していることに注意してください。

gtk_tree_sortable_set_sort_column_id()また、ソートする列を選択するために呼び出す必要がある場合もあります。これは、列インデックスとは異なる「列 ID の並べ替え」の概念を使用します。gtk_tree_view_column_set_sort_column_id()を使用して、作成時に個々の GtkTreeViewColumns に適切な列 ID を設定する必要があります。

関連する概念をよりよく理解するには、このチュートリアルを読むとよいでしょう。

于 2010-04-16T12:25:50.437 に答える