GtkButton只显示文字但没有图像

时间:2010-10-08 02:07:58

标签: c user-interface gtk

我在Gtk ButtonBox中有一个Gtk Button,它没有显示我正在添加的图像。它只显示文字。这是代码:

GtkImage *image = (GtkImage *) gtk_image_new_from_file("Gateway-LT21-netbook-2-540x359");
GtkButton *button = (GtkButton *) gtk_button_new_with_label("test");
gtk_button_set_image(button, (GtkWidget *) image);

我有什么遗失的吗?

3 个答案:

答案 0 :(得分:5)

确保“gtk-button-images”设置设置为true。

GtkSettings *default_settings = gtk_settings_get_default();
g_object_set(default_settings, "gtk-button-images", TRUE, NULL); 

注意:这应该遵循第一个窗口的构造(当然在主循环之前)。

如果我没有弄错,这是Gnome最近的一个变化 - 出于某种原因,他们决定不将图标作为默认设置出现在按钮上(这似乎也适用于标准的MS Windows主题)。

答案 1 :(得分:1)

试试这个:

gtk_widget_show(GTK_WIDGET(image))

答案 2 :(得分:0)

显然,至少在GTK + 3中有一个名为gtk_button_set_always_show_image()的函数,无论全局设置如何,它都可以为特定按钮启用图像。