Как очистить таблицу Gtk от всех ее виджетов - PullRequest
0 голосов
/ 22 ноября 2010

Я новичок в gtk и c.

Использование c и libglade для моей программы.

Я пишу программу, которая должна многократно обновлять таблицу gtk в зависимости от выбора выпадающего списка, который был сделан пользователем.

При инициализации в графическом интерфейсе есть vbox с пустой таблицей.Пользователь выбирает опцию из выпадающего списка и в зависимости от выбора таблица заполняется виджетами (надписями и полями ввода).Если пользователь изменит свой выбор на другой вариант, мне нужно очистить таблицу от предыдущих виджетов и упаковать таблицу новым подходящим виджетом для выбора.

Я попытался уничтожить виджет таблицы и заново создатьновую таблицу для добавления в vbox, но затем я получаю ошибку сегментации.

Есть ли способ уничтожения виджетов в таблице, но не таблицы, или другой способ сделать то, что я хочу сделать?

Ответы [ 3 ]

3 голосов
/ 22 ноября 2010

Похоже, вам нужно использовать GtkTreeView с GtkListStore вместо таблицы и GtkCellRendererText вместо надписей и полей ввода. Таблица не предназначена для отображения динамических данных.

0 голосов
/ 19 января 2017

Вы можете удалить существующую таблицу и создать + добавить новую таблицу, к которой была прикреплена старая, например, внутри вертикальной коробки.

0 голосов
/ 22 ноября 2010

Вы пробовали tblFoo.resize(0, 0)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...