[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: Changing a previously created GtkImage
- From: David Nečas (Yeti) <yeti physics muni cz>
- To: gtk-app-devel-list gnome org
- Subject: Re: Changing a previously created GtkImage
- Date: Wed, 12 Sep 2007 23:01:26 +0200
On Wed, Sep 12, 2007 at 01:52:43PM -0700, tsaud wrote:
>
> I have created an image from a file using
> image1 = gtk_image_new_from_file("pictures/Empty.gif");
> gtk_widget_set_name (image1, "image1");
>
> and displalyed it using:
> gtk_widget_show(image1);
> gtk_box_pack_start(GTK_BOX (hbox1), image1, TRUE, TRUE, 0);
>
> and that works fine. The image is correctly displayed where I want it.
> Later, when a particular event happens (right now I have assigned it to a
> button press), I want to change the image to the image in the file
> "pictures/Full.gif" (which is exactly the same size as Empty.gif). To do
> that, I did the following:
>
> void on_button1_pressed (GtkButton *button, gpointer user_data)
> {
> GtkWidget *imageptr;
> imageptr = lookup_widget(GTK_WIDGET(button), "image1");
> if(imageptr != NULL)
> {
> gtk_image_set_from_file(GTK_IMAGE(imageptr), "pictures/Full.gif");
> }
> else
> fprintf(stderr, "image1 not found\n");
> }
>
> When I press the button, the image is replaced by a broken image icon, not
> the new image. What am I doing wrong? I am obviously getting the correct
> widget with the lookup_widget call, since the image changed. The file
> "Empty.gif" and the file "Full.gif" are in the same directory, and when I
> change the gtk_image_new_from_file() call to load the "Full.gif" file, that
> works fine as well, so I know the file is there and readable. I just don't
> understand why it didn't change to the new image.
Can't the working directory change meanwhile? Paths such as
"pictures/Full.gif" seem quite fragile to me.
1) Try g_file_test() to check whether "pictures/Full.gif"
exists as the time on_button1_pressed() is called.
2) Try to load the image with gdk_pixbuf_load() and look at
the error your obtain.
Yeti
--
http://gwyddion.net/
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]