GtkTreeView列标题单击事件

GtkTreeView Column Header Click Event

本文关键字:事件 单击 标题 GtkTreeView      更新时间:2023-10-16

我有个问题。我有一个GtkListStoreGtkTreeView,我想对GtkListStore进行排序,并在用户单击GtkTreeView的某一列时将结果更新到GtkTreeView。我假设列是可点击的,不能重新排序,所以列的数字顺序可以用来设置排序列的索引。但我似乎找不到当用户点击特定列的标题时会发出哪个信号。我已经一次又一次地浏览了GTKMM文档,但它似乎没有被提及!

使用Gtk::TreeView::get_column(<column-no>)获取特定列,并使用Gtk::TreeViewColumn::signal_clicked():附加到其"点击"的信号

Gtk::TreeViewColumn* col = myview.get_column(SOME_COLUMN_NUMBER);
col->signal_clicked().connect(sigc::mem_fun(*this,&some_method));

这不是你应该做的。

可以有多个视图连接到同一个模型;排序不是对模型所做的,而是对视图所做的。

请参阅GtkTreeSortable接口(及其GtkTreeModelSort实现)。