问题描述: 把列表listview写入notebook里。
在main函数中,
win = create_and_set_a_window(); book = gtk_notebook_new(); gtk_notebook_set_tab_pos( GTK_NOTEBOOK( book ), GTK_POS_LEFT ); gtk_container_add( GTK_CONTAINER( win ), book ); create_page_one( book, win ); //用来创建选项卡1
在create_page_one函数里
typedef struct _ADD { GtkWidget *view; GtkWidget *win; } ADD; 。。。 ADD adder; 。。。 /* ** 创建列表 */ view = create_list_view(); adder.win = win; adder.view = view;
。。。
g_signal_connect( G_OBJECT( button1 ), "clicked", G_CALLBACK( event_to_add ), (gpointer)&adder ); //绑定事件 event_to_add
在event_to_add函数里
//函数原型:event_to_add( GtkWidget *widget, gpointer data ) 。。。 GtkWidget *view; GtkWidget *win; 。。。 view = ((ADD *)data)->view; win = ((ADD *)data)->win; 。。。 /* ** 创建个对话框 */ dialog = gtk_dialog_new_with_buttons( "添加新用户", GTK_WINDOW( win ), GTK_DIALOG_MODAL, GTK_STOCK_OK, GTK_RESPONSE_OK, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, NULL ); 。。。 /* ** 添加到列表里 */ model = gtk_tree_view_get_model( GTK_TREE_VIEW( view ) ); gtk_list_store_append( GTK_LIST_STORE( model ), &iter); gtk_list_store_set( GTK_LIST_STORE( model ), &iter, USER_ID, user_id, PASSWD, passwd, CLASS, flag, CHOICE, FALSE, -1 ); 。。。