我从这里按照下面显示的教程:http: //zetcode.com/tutorials/gtktutorial/firstprograms/
我的问题是图标不显示。我的操作系统是 Ubuntu。我尝试了几个不同大小和文件类型的不同图标,但它们都不起作用。一个是 25 像素宽和 19 像素高的 .png,另一个是 185 像素宽和 210 像素高的 .jpg。我更改了在此处控制它的行中引用的文件(什么也没做):
gtk_window_set_icon(GTK_WINDOW(window), create_pixbuf("web.png"));
我什至尝试通过启用菜单选项来更改 gnome 的配置编辑器中的设置以具有图标。
我用谷歌搜索了一些,没有找到任何有用的东西,所以我想我会问 stackoverflow 上的优秀程序员。^_*
谢谢阅读。
你的朋友,
用户2085446
#include <gtk/gtk.h>
GdkPixbuf *create_pixbuf(const gchar * filename)
{
GdkPixbuf *pixbuf;
GError *error = NULL;
pixbuf = gdk_pixbuf_new_from_file(filename, &error);
if(!pixbuf) {
fprintf(stderr, "%s\n", error->message);
g_error_free(error);
}
return pixbuf;
}
int main( int argc, char *argv[])
{
GtkWidget *window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "icon");
gtk_window_set_default_size(GTK_WINDOW(window), 230, 150);
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_icon(GTK_WINDOW(window), create_pixbuf("web.png"));
gtk_widget_show(window);
g_signal_connect_swapped(G_OBJECT(window), "destroy",
G_CALLBACK(gtk_main_quit), NULL);
gtk_main();
return 0;
}