2011-03-16 23 views
1

嗨,每一個我需要一個幫助,我正在開發一個接口使用gtk我完全是新的gtk。我的程序中有 我有兩列的列表。和一個button.list充滿了我想要的一些值,當我從列表中選擇一個值,然後按下它的值將在屏幕上打印。gtk從列表中打印選定的值

到現在我的名單得到填補和按鈕也工作,但是當我選擇的價值它的ID沒有存儲在變量i猜測,而不是好心打印幫我,這裏是我的事件處理程序的代碼

static void show_graph(GtkWidget *widget, gpointer selection) 
{ 
    GtkListStore *store; 
    GtkTreeModel *model; 
    GtkTreeIter iter; 
    char * value; 

    store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW (list))); 
    model = gtk_tree_view_get_model (GTK_TREE_VIEW (list)); 

    if (gtk_tree_model_get_iter_first(model, &iter) == FALSE) 
     return; 

    if (gtk_tree_selection_get_selected(GTK_TREE_SELECTION(selection), 
     &model, &iter)) { 
     gtk_tree_model_get(model, &iter, AIP, &value, -1); 
     printf("%s" ,value); 

    gtk_list_store_remove(store, &iter); 
    }  
} 

回答

0

據有關API文檔gtk_tree_selection_get_selected():

(...)如果你使用 選擇GTK_SELECTION_MULTIPLE此功能將無法正常工作。

使用gtk_tree_selection_get_mode()檢查您的病例設置了什麼。