C++ 如何用图像填充整个窗口并允许调整窗口大小?

C++ 如何用图像填充整个窗口并允许调整窗口大小?,c++,gtk2,C++,Gtk2,我需要一个图像的大小调整到整个窗口,并保持选项缩小/调整窗口大小。 作为一项单独的任务,它很容易完成,但不能一起完成。 我使用的示例代码是: myWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(myWindow), "name"); gtk_window_set_default_size(GTK_WINDOW(myWindow), myWidth, myHeigh

我需要一个图像的大小调整到整个窗口,并保持选项缩小/调整窗口大小。 作为一项单独的任务,它很容易完成,但不能一起完成。 我使用的示例代码是:

    myWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    gtk_window_set_title(GTK_WINDOW(myWindow), "name");
    gtk_window_set_default_size(GTK_WINDOW(myWindow), myWidth, myHeight);
    gtk_window_set_resizable(GTK_WINDOW(myWindow), TRUE);
    g_signal_connect(myWindow, "delete-event", G_CALLBACK(PrivDeleteEvent), this);
    g_signal_connect(myWindow, "destroy", G_CALLBACK(PrivOnDestroy), this);

    myImage = gtk_image_new();

    GtkWidget* container = gtk_alignment_new(0, 0, 1, 1);
    gtk_container_add(GTK_CONTAINER(myWindow), container);
    gtk_container_add(GTK_CONTAINER(container), myImage);

    g_signal_connect(myImage, "expose-event", G_CALLBACK(PrivOnImageExposeEvent), this);

    gtk_widget_show_all(myWindow);

    gtk_main();

void 
PrivSetImage()
{
    GdkPixbuf* pixbuf = gdk_pixbuf_new_from_data(...);
    gtk_image_set_from_pixbuf(GTK_IMAGE(myImage), pixbuf);
}
图像小部件调整大小后,我调用一些渲染内容,然后将其显示在GtkImage中。这很好,我看到的图像,我能够调整窗口大小。但在gtk_图像_设置_从_pixbuf调用后,我再也不能缩小比创建pixbuf所用大小更小的窗口。就好像内部的某个地方调用了gtk_widget_set_size_request和Pixbuf维度,阻止窗口缩小到Pixbuf大小。 有什么建议吗