1
我已經創建了一個窗口,其中包含一些容器和小部件,並且我想在運行時動態添加一個新小部件到此窗口中的某個Vbox。所以我有這樣的代碼,它會彈出窗口:如何以編程方式將窗口小部件添加到從GtkBuilder創建的容器中?
gtk_builder_add_from_file(g_builder, "window.xml", NULL);
mainwindow = GTK_WIDGET(gtk_builder_get_object(g_builder, "window"));
gtk_widget_show(mainwindow);
然後,我創建一個新的標籤,例如,並將其添加到現有的縱向方框之一,被稱爲「vbox_mid」,像這樣:
label = gtk_label_new("Test label");
vbox = GTK_WIDGET(gtk_builder_get_object(g_builder, "vbox_mid"));
gtk_box_pack_end(GTK_BOX(vbox), label, TRUE, TRUE, 0);
但這似乎並不奏效。我在vbox中看不到新標籤。我有一種感覺,我在這裏錯過了一些東西,但我看不到它是什麼。我想也許有一個特殊的GtkBuilder調用來動態地添加一個小部件,但我沒有看到任何看起來像這樣的東西。我真的很感激任何幫助。