Прижать слой в qt к верху окна, чтобы он не перемещался и не пытался занять доступное место

Делаю виджет, который будет отображать переданные в него виджеты как в таблице (принимает два параметра - количество виджетов в строке и какую часть экрана занимает каждый виджет).

Иерархия:

QScrollArea
    QWidget container
        QVBoxLayout mainLayout
            QHBoxLayout btnLayout
            QGridLayout gridLayout

Конструктор cpp

    // контейнер для всех виджетов
    container = new QWidget(this);
    // компоновщик на контейнер
    mainLayout = new QVBoxLayout(container);
    container->setLayout(mainLayout);

    // слой для кнопок (находится на одном уровне со слоем с виджетами)
    btnLayout = new QHBoxLayout();
    addWidgetBtn = new QPushButton("Добавить");
    removeWidgetBtn = new QPushButton("Удалить");

    btnLayout->addWidget(addWidgetBtn);
    btnLayout->addWidget(removeWidgetBtn);

    mainLayout->addLayout(btnLayout);

    connect(addWidgetBtn, &QPushButton::clicked, this, &GridWidget::addWidget);
    connect(removeWidgetBtn, &QPushButton::clicked, this, &GridWidget::removeWidget);

    // устанавливаем виджет-контейнер в QScrollArea
    this->setWidget(container);

Из за компоновщика выходит следующее screen1

screen2

screen3

Каким образом я могу прибить слой с кнопками к верху или к низу (причем, чтобы при ресайзе он также растягивался горизонтально, но всегда был либо внизу либо вверху)?

Если прибиваю таким способ:

mainLayout->addStretch();

то кнопки прибиваются, но их слой все равно занимает все доступное место

введите сюда описание изображения


Ответы (0 шт):