GtkButton просто показывает текст, но без изображения - PullRequest
4 голосов
/ 08 октября 2010

У меня есть GtkButton внутри GtkHButtonBox, который не показывает изображение, которое я добавляю к нему.Это просто показывает текст.Вот код:

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 ]

5 голосов
/ 08 октября 2010

Убедитесь, что для параметра "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 голос
/ 08 октября 2010

Попробуйте это:

gtk_widget_show(GTK_WIDGET(image))
0 голосов
/ 28 декабря 2012

По-видимому, по крайней мере в GTK + 3 есть функция с именем gtk_button_set_always_show_image () , которая должна включать изображение для определенной кнопки независимо от глобальных настроек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...