Много проб и ошибок. Я обнаружил, что вставка растяжек в стратегические точки часто помогает мне добиться желаемого эффекта. Например, если у меня есть макет QPushButton, минимальный размер которого я хочу, я сделаю что-то вроде следующего:
QHBoxLayout* layout = new QHBoxLayout;
QPushButton* myBtn = new QPushButton("Test");
layout->insertStretch(1);
layout->addWidget(myBtn, 0);
layout->insertStretch(1);
Также не забывайте, что вы можете установить поле содержимого макета с помощью setContentsMargins ().
Я не использую Designer, так как обнаружил, что гораздо лучше понимаю систему компоновки, когда играю с ней в коде.