GtkNotebook question
- From: Deekshit M <dmantamp yahoo com>
- To: gtk-app-devel-list gnome org
- Subject: GtkNotebook question
- Date: Sun, 6 Mar 2005 21:11:36 -0800 (PST)
Hi,
When I was using GtkNoteBook such that I show the
Vbox containing the notebook, before creating the
notebook itself. I see the widgets in the second page
of notebook on the first page. But this becomes OK,
when I switch to second page and back to first page.
Here the source code that I was trying. Note that, if
I put the gtk_widget_show(vbox) ath end, just before
gtk_main(), the problem does not reproduce.
Is this a known and intended behavior? If yesy why ?
void show_window()
{
GtkWidget *window, *vbox, *hbox, *vbox2;
GtkWidget *nb, *ent, *lbl, *lbl2;
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_signal_connect(GTK_OBJECT(window),
"delete_event",
GTK_SIGNAL_FUNC(gtk_main_quit),
NULL);
gtk_widget_set_size_request(window,400,400);
gtk_widget_show(window);
vbox = gtk_vbox_new(FALSE, 2);
gtk_container_add(GTK_CONTAINER(window), vbox);
gtk_widget_show(vbox);
nb = gtk_notebook_new();
gtk_box_pack_start(GTK_BOX(vbox), nb, TRUE,
TRUE,10);
gtk_widget_show(nb);
/* Add first page */
vbox2 = gtk_vbox_new(FALSE, 2);
lbl = gtk_label_new("First page ");
gtk_notebook_append_page(GTK_NOTEBOOK(nb), vbox2,
lbl);
gtk_widget_show(lbl);
gtk_widget_show(vbox2);
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE,
FALSE, 10);
gtk_widget_show(hbox);
lbl2 = gtk_label_new("Text Field ");
gtk_box_pack_start(GTK_BOX(hbox), lbl2, FALSE,
FALSE, 10);
gtk_widget_show(lbl2);
ent = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(ent),"DD");
gtk_box_pack_start(GTK_BOX(hbox), ent, TRUE, TRUE,
10);
gtk_widget_show(ent);
/* Create the second page */
vbox2 = gtk_vbox_new(FALSE, 2);
lbl = gtk_label_new("Second page ");
gtk_notebook_append_page(GTK_NOTEBOOK(nb), vbox2,
lbl);
vbox2 = gtk_vbox_new(FALSE, 2);
lbl = gtk_label_new("Second page ");
gtk_notebook_append_page(GTK_NOTEBOOK(nb), vbox2,
lbl);
gtk_widget_show(lbl);
gtk_widget_show(vbox2);
hbox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE,
FALSE, 10);
gtk_widget_show(hbox);
lbl2 = gtk_label_new("Second Field ");
gtk_box_pack_start(GTK_BOX(hbox), lbl2, FALSE,
FALSE, 10);
gtk_widget_show(lbl2);
ent = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(ent),"SECOND LABEL");
gtk_box_pack_start(GTK_BOX(hbox), ent, FALSE, FALSE,
10);
gtk_widget_show(ent);
ent = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(ent),"SECOND LABEL");
gtk_box_pack_start(GTK_BOX(hbox), ent, FALSE, FALSE,
10);
gtk_widget_show(ent);
gtk_main();
}
main(int argc, char *argv[])
{
gtk_init(&argc, &argv);
show_window();
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]