2009-02-02 42 views
2

如何设置GtkTreeView上特定列的水平大小?我的TreeView上有4个列,最后一个扩展到剩余的空闲空间。如何设置第一列或第二列在自由空间上展开以在所有列上设置固定宽度?GtkTreeView上的列大小

回答

2

您可以使用gtk_tree_view_get_column来获取treeview的第n列,然后使用gtk_tree_view_column_set_sizingGTK_TREE_VIEW_COLUMN_FIXED就可以了。

您还可以通过gtk_tree_view_column_set_expand来告诉列要展开。引用docs

将列设置为可用额外空间。该空间在展开设置为TRUE的所有列中均匀共享。如果没有列设置此选项,则最后一列将获得所有额外的空间。默认情况下,每个列都使用这个FALSE创建。

1

样品为Ruby:

col = Gtk::TreeViewColumn.new("Headline", renderer, :text => 1) 
col.expand = true # Expands the column 

col.sizing = Gtk::TreeViewColumn::FIXED # Sets the column on a fixed width 
col.min_width = 150