用标签为Gtktreeview列添加名字

来源:互联网 发布:华扬资本长期动态优化 编辑:程序博客网 时间:2024/06/05 08:14
#include <gtk/gtk.h>

GtkWidget *create_view(void)
{
 
  GtkWidget *view;
   GtkListStore *store;
   GtkCellRenderer *cell;
   GtkTreeViewColumn *col;

   GtkWidget *label;

   store = gtk_list_store_new(1,G_TYPE_INT);

   view =gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
   g_object_unref(store);

   cell =gtk_cell_renderer_text_new();

   col =gtk_tree_view_column_new_with_attributes("可以为空", cell, "text", 0,NULL);
   label =gtk_label_new("你想用的列的名字");
 
  gtk_tree_view_column_set_widget(col, label);
  
  gtk_widget_show(label);//这句一定要有,否则名字显示不出来
  gtk_tree_view_append_column(GTK_TREE_VIEW(view), col);

   return view;
}

gint main(gint argc, gchar **argv)
{
   GtkWidget *win;
   GtkWidget *view;

  gtk_init(&argc, &argv);

   win =gtk_window_new(GTK_WINDOW_TOPLEVEL);
   g_signal_connect(win,"delete-event", G_CALLBACK(gtk_main_quit), NULL);

   view = create_view();
  gtk_container_add(GTK_CONTAINER(win), view);
   gtk_widget_show(view);

   gtk_widget_show(win);