Gtk 如何使用GdkPixBuf?

Gtk 如何使用GdkPixBuf?,gtk,Gtk,我想使用C中的GTK+在VBox中显示一个简单的GIF图像。我知道我需要使用GdkPixbuf。但像往常一样,没有这样做的例子。有人能提供帮助吗 另外:在GTK+中,我们如何将PNG图像作为背景添加到小部件中?有人能举个例子吗 忘记添加以下内容: 忘了告诉你我正在用Glade开发GUI。。。 我在Glade中创建了vBox,在其中一个vBox块中,我需要显示FIG图像。。。。 很抱歉 --但请参阅unwind的答案,以了解使用GtkImage小部件执行此操作的更好方法 您需要在小部件的样式结构中

我想使用C中的GTK+在VBox中显示一个简单的GIF图像。我知道我需要使用GdkPixbuf。但像往常一样,没有这样做的例子。有人能提供帮助吗

另外:在GTK+中,我们如何将PNG图像作为背景添加到小部件中?有人能举个例子吗

忘记添加以下内容:

忘了告诉你我正在用Glade开发GUI。。。 我在Glade中创建了vBox,在其中一个vBox块中,我需要显示FIG图像。。。。 很抱歉

  • --但请参阅unwind的答案,以了解使用
    GtkImage
    小部件执行此操作的更好方法
  • 您需要在小部件的样式结构中设置背景pixmap字段:

    GtkRcStyle *newstyle = gtk_widget_get_modifier_style(widget);
    newstyle->bg_pixmap_name[GTK_STATE_NORMAL] = g_strdup(pngfilename);
    gtk_widget_modify_style(widget, newstyle);
    
  • 你经常可以通过谷歌搜索你需要的函数来找到代码示例。GTK文档通常不包含每个函数的示例,因为这会使它们变得杂乱无章,而像
    gdk_pixbuf_new_from_file()
    这样的函数文档通常非常简单。我注意到您经常发布此类问题,我想知道您是否在正确的位置查找文档。例如,您是否正在使用优秀的参考工具?另一方面,GTK文档在一些地方确实缺少一些重要信息。如果您有一些改进,为什么不提供文档?

    GTK+中的一个小部件,它将其他小部件显示为其子部件,并垂直堆叠它们


    毫不奇怪,有一个GTK+小部件专门用于显示图像;它叫GtkImage。您应该使用
    调用创建一个,将GIF文件名传递给它,然后将其添加到vbox中。不需要自己创建基础GDK映像。

    +1因为我还想知道如何将小部件的背景设置为映像。顺便说一句:你真的应该接受更多的答案——呃,当然你是对的。我已经编辑了我的答案以供参考。