How to make a Qt Widget grow with the window size?
I want to have a small QFormLayout
that grows to fill its parent widget.
I created a new .ui file using the QWidget
template in Qt Designer. I put a QFormLayout
inside that 'window', then put some controls inside that QFormLayout
.
This all works reasonably well, but the QFormLayout
always stays at the size I set in Qt Designer. I would like the QFormLayout
to fill its parent widget and grow/shrink with it.
How can I accomplish that?
Solution 1:
In Designer, activate the centralWidget and assign a layout, e.g. horizontal or vertical layout. Then your QFormLayout will automatically resize.
Always make sure, that all widgets have a layout! Otherwise, automatic resizing will break with that widget!
See also
Controls insist on being too large, and won't resize, in QtDesigner
Solution 2:
I found it was impossible to assign a layout to the centralwidget until I had added at least one child beneath it. Then I could highlight the tiny icon with the red 'disabled' mark and then click on a layout in the Designer toolbar at top.