2009-11-03 2 views
0

У меня есть GtkVBox с некоторыми лейблами и некоторые пустые блоки в нем ... Я создал это окно + VBOX в Glade3 ... Работая под С.Обновление виджета в GtkVBox

+----------------+ 
|Lable1   | 
+----------------+ 
|EMPTY   | 
+----------------+ 
|Label2   | 
+----------------+ 
|Lable3   | 
+----------------+ 

На некоторых внешних события, я хочу добавить виджет метки в месте EMPTY ... Как это сделать?

Плюс, как я могу удалить любую метку и добавить новый виджет в этом месте?

ответ

0

Не было бы проще просто добавить пустую (или скрытую) этикетку изначально, а затем заполнить ее или показать ее при необходимости?

Чтобы удалить метку, используйте gtk_container_remove (VBox, этикетки), где VBox является указателем на виджет GtkVBox и этикетки является указателем виджет вы хотите удалить.

+0

На самом деле требование такое, что ..... иногда мне нужно помещать ярлык или несколько раз мне нужно поместить изображение, а поверх изображения мне нужно поместить ярлык ... так что он не пуст ... может мы обновляем отображаемое изображение на другое изображение. Предположим, что Пустое место содержит некоторое невидимое изображение, а затем на каком-то событии я заменю это изображение на видимое изображение .. можем ли мы это сделать и как это сделать? – User7723337

+0

Вы можете добавить пустой GtkVBox в этом месте, а затем вызвать gtk_box_pack_start(), чтобы добавить нужный виджет, когда это необходимо. Если вам нужно изменить его позже, уничтожьте содержимое окна и упакуйте новые виджеты. –

Смежные вопросы