Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: BuRn от Декабрь 16, 2011, 21:02



Название: удаление всех виджетов с горизонтального лайаута
Отправлено: BuRn от Декабрь 16, 2011, 21:02
есть горизонтальный лайаут. хотелось бы его очистить полностью, видел функцию удаление виджета 1, но как получить то что есть на лайауте я не знаю,может есть что-нибудь типа clear ?


Название: Re: удаление всех виджетов с горизонтального лайаута
Отправлено: popper от Декабрь 16, 2011, 21:15
Код:
         for (int i = 0; i < layout->count(); ++i)
             layout->itemAt(i));


Название: Re: удаление всех виджетов с горизонтального лайаута
Отправлено: BuRn от Декабрь 16, 2011, 23:09
на лайауте у меня несколько HorisontalLayout но почему-то возвращает не то количество сколько их там


Название: Re: удаление всех виджетов с горизонтального лайаута
Отправлено: popper от Декабрь 17, 2011, 16:00
а HorisontalLayout ты добавлял в дизайнере?
сделай короткий тест, в котором (в коде) добавляешь на основной layout несколько дополнительных. и посмотри, совпадает ли QLayout::count() с количеством добавленных.