您好我需要帮助我正在使用gtk开发界面我对gtk来说是全新的。 在我的程序中,我有一个包含两列的列表。并且一个button.list填充了一些值,我希望当我从列表中选择一个值并按下按钮时,它将在屏幕上打印。
到目前为止我的列表已经填满,按钮也正常工作但是当我选择它的值时,它不会存储在变量中我猜并且不打印,请帮助我这里是我的事件处理程序的代码
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 :(得分:0)
根据有关gtk_tree_selection_get_selected()的API文档:
(...)如果您使用此功能将无效 选择是GTK_SELECTION_MULTIPLE。
使用gtk_tree_selection_get_mode()
检查案例中的设置。