2013-09-22 3 views
1

Я пытаюсь добавить и удалить строки в GridBagSizer динамически. Каждая строка sizer имеет набор виджетов с самой правой из которых является кнопкой «удалить», которая удаляет строку, в которой она находится, при нажатии. Другая кнопка за пределами sizer добавляет новый нижний ряд виджетов в sizer при нажатии.Лучше удалять и добавлять строки GridBagSizer динамически?

У меня есть пример простого приложения, которое работает, но это довольно барочное, и я надеюсь, что есть более простой способ.

Рабочий пример отделяет и уничтожает все виджеты в удаляемой строке, но это не удаляет пустую строку, где раньше были виджеты, даже после sizer.Layout(). То, что я сделал, чтобы обойти это, - это отсоединить все виджеты в строках ниже удаленной строки и переместить их на одну строку вверх.

Это работает, но есть ли лучший способ?

Ross

ответ

1

Это действительно совет. Использование

sizer.SetEmptyCellSize((0,0))

и вашу пустую строку не будет принимать любое пространство.

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