Как увеличить размер виджета Qt Widget?

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

Я создал новый файл .ui, используя шаблон QWidget в Qt Designer. Я положил QFormLayout внутри этого "окна", затем поместил некоторые элементы управления внутри QFormLayout.

Все это работает достаточно хорошо, но QFormLayout всегда остается в размере, установленном в Qt Designer. Я хотел бы, чтобы QFormLayout заполнил свой родительский виджет и увеличил/сократил его.

Как я могу это сделать?

Ответ 1

В конструкторе активируйте центральный виджет и назначьте макет, например. горизонтальной или вертикальной компоновке. Затем ваш QFormLayout автоматически изменит размер.

Image of Designer

Всегда убедитесь, что у всех виджетов есть макет! В противном случае автоматическое изменение размера будет нарушено с помощью этого виджета!

См. также

Элементы управления настаивают на том, что они слишком велики и не изменяются в QtDesigner

Ответ 2

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