Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: SimpleSunny от Апрель 09, 2009, 17:17



Название: Компоновка виджетов на форме.
Отправлено: SimpleSunny от Апрель 09, 2009, 17:17
Есть форма, созданная в дизайнере.
В процессе работы программы на эту форму добавляются виджеты.
Необходимо сделать так, чтобы виджеты распологались в два столбца. При добавлении виджета он добавлялся в конец столбца (сверху-вниз, слева-направо).
При удалении виджета - все виджеты, которые были раньше его, смещалиь на одну позицию, т. е. чтобы не было "дырок" на форме.

Существует ли не велосипедный метод сделать коректное удаление?:)

P. S. Сейчас используется QGridLayout. При добавлении просто запоминается последняя позиция.


Название: Re: Компоновка виджетов на форме.
Отправлено: spirit от Апрель 09, 2009, 17:27
попробуй удалять через QLayout::takeAt.


Название: Re: Компоновка виджетов на форме.
Отправлено: SimpleSunny от Апрель 10, 2009, 17:12
Нет, не подошло, так как за виджетами запоминаются их позиции. Придумаем какой-нить велосипед промежуточный :)


Название: Re: Компоновка виджетов на форме.
Отправлено: Danila_Bagrofff от Апрель 13, 2009, 09:11
а если создать два вертикальных лэаута? и в них добавлять?

а их объединить на родительском виджете в горизонтальный лэаут.


Название: Re: Компоновка виджетов на форме.
Отправлено: SABROG от Апрель 13, 2009, 20:08
void QWidget::updateGeometry () не подходит?