You have to "realize" the widget before fetching the size. 2008/9/3 Lazy Fox <lazy.fox.wu@xxxxxxxxx>: > /* How to get the widget's size before it has been shown? > * > * There are two "printf" statements below. I want to get the widget's size > at the first printf. > * How to do this? > */ > #include <gtk/gtk.h> > > int main( int argc, char *argv[] ) > { > GtkWidget *window; > gtk_init (&argc, &argv); > > window = gtk_window_new (GTK_WINDOW_TOPLEVEL); > printf("width=%d \n", window->allocation.width); // return 1 > gtk_widget_show (window); > printf("width=%d \n", window->allocation.width); // return 200 > gtk_main (); > return 0; > } > > _______________________________________________ > gtk-list mailing list > gtk-list@xxxxxxxxx > http://mail.gnome.org/mailman/listinfo/gtk-list > > _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list