C-为什么在试图填充gtk_list时进行分割故障



我想填充gtk2 gtk_list,然后在函数中尝试此代码块:

GList (*List) = NULL;
GtkWidget (*ListBox) = gtk_list_new();
List = g_list_prepend(List, "List Item");
gtk_container_add(GTK_CONTAINER(Vbox), ListBox);
gtk_list_prepend_items(GTK_LIST(ListBox), List);

我确定我的功能没有错。我有一个细分错误?为什么?我该怎么做才能修复它?

您正在segfaulting,因为您正在混合 GLIST deverated gtklist gtklist list function。

旧的gtklist被弃用,与Glist不同。注意:

GList (*List) = NULL;
...
List = g_list_prepend(List, "List Item");
/* now you switch to gtk_list_... and GtkList */
gtk_container_add(GTK_CONTAINER(Vbox), ListBox);
gtk_list_prepend_items(GTK_LIST(ListBox), List);

解决方案:只需使用GListg_list...功能,然后避免使用的GtkListgtk_list...对应物。GListg_list...旨在替换较早的类型和功能,并且在您的GTK 2应用程序中编译时将无缝工作。

相关内容

  • 没有找到相关文章

最新更新