LINUX.ORG.RU

QT: развернуть Q*Layout до размеров родителя


0

0

Наверное, глупый и наивный вопрос (судя по отсутствию решения в гугле).

Разбираюсь с QT. До него было много Delphi (:-) и чуть-чуть GTK.

Хочу рисовать интерфейс, не зависящий (растягивающийся пропорционально) от габаритов окна. Пытаюсь использовать для этого QLayout и т.п.

Наверное, глупый вопрос - как заставить изначально Q[Grid|[V|H]Box]Layout'ы изначально занимать всё доступное место в родительском виджете? Или я что-то не понимаю? В GTK изначально всё билось на боксы и только в них и совались контролы, а тут бокс - просто коробка с не очено понятной логикой.

Я понимаю, что можно переопределять события и менять размеры вручную, но неужто нету более простого способа?

Или я вообще не в ту степь забрёл?

Qt Designer 4.3.2.

★★★★★

Layout не занимает место , его занимают его дети-виджеты .
layout->addWidget(child);
parent->setLayout(layout)
и child займет все место в parent

kitov ★★★
()
Ответ на: комментарий от AngryElf

Извиняюсь невнимательно прочитал :-)
Размещаешь элементы на виджете , потом правая кнопка мыши -> layout и выбираешь подходящий .

kitov ★★★
()
Ответ на: комментарий от AngryElf

по adjust size всё сжимается к чертям :)

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

А, блин, тыкнул правой по родительскому виджету, там все пункты включены, сделал как надо. Спасибо!

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от AngryElf

Если есть "break layout" значит уже лэйаут создан .
Могу только посоветовать для начала создавать интерфейсы-ручками ,
без дизайнера .

kitov ★★★
()
Ответ на: комментарий от kitov

> Могу только посоветовать для начала создавать интерфейсы-ручками , без дизайнера .

Эт понятно... Мне больше пока так, поиграться, макеты набросать. Потом всё-равно большая часть руками рисоваться будет.

AngryElf ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.