ここから以下に示すチュートリアルに従っています: http://zetcode.com/tutorials/gtktutorial/firstprograms/
私の問題は、アイコンが表示されないことです。私のオペレーティングシステムはUbuntuです。サイズとファイルの種類が異なるいくつかのアイコンを試してみましたが、どれも機能しません。1 つは幅 25 ピクセル、高さ 19 ピクセルの .png で、もう 1 つは幅 185 ピクセル、高さ 210 ピクセルの .jpg です。ここでこれを制御する行で参照されているファイルを変更しました(何もしませんでした):
gtk_window_set_icon(GTK_WINDOW(window), create_pixbuf("web.png"));
メニューにアイコンを表示するオプションを有効にして、gnome の構成エディターで設定を変更してみました。
私はいくつかをグーグルで調べましたが、役立つものは何も見つかりませんでした。^_*
読んでくれてありがとう。
あなたの仲間、
ユーザー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;
}