I have a grid layout where the widgets look like this:
The 3 vertical sections are qscroll areas
Now, when I hide the top button it looks like this:
How do I get the buttons in the scroll areas to stay put when I hide the top button, instead of stretching up?
Here is the auto generated ui designer code:
/********************************************************************************
** Form generated from reading UI file 'designerth4586.ui'
**
** Created by: Qt User Interface Compiler version 5.9.5
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef DESIGNERTH4586_H
#define DESIGNERTH4586_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QScrollArea>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
QT_BEGIN_NAMESPACE
class Ui_Form
{
public:
QGridLayout *gridLayout_4;
QPushButton *pushButton;
QScrollArea *scrollArea;
QWidget *scrollAreaWidgetContents_6;
QVBoxLayout *verticalLayout;
QPushButton *pushButton_3;
QPushButton *pushButton_5;
QPushButton *pushButton_2;
QPushButton *pushButton_4;
QScrollArea *scrollArea_2;
QWidget *scrollAreaWidgetContents_7;
QVBoxLayout *verticalLayout_2;
QPushButton *pushButton_7;
QPushButton *pushButton_6;
QPushButton *pushButton_9;
QPushButton *pushButton_8;
QScrollArea *scrollArea_3;
QWidget *scrollAreaWidgetContents_8;
QVBoxLayout *verticalLayout_3;
QPushButton *pushButton_13;
QPushButton *pushButton_11;
QPushButton *pushButton_10;
QPushButton *pushButton_12;
void setupUi(QWidget *Form)
{
if (Form->objectName().isEmpty())
Form->setObjectName(QStringLiteral("Form"));
Form->resize(743, 851);
gridLayout_4 = new QGridLayout(Form);
gridLayout_4->setObjectName(QStringLiteral("gridLayout_4"));
pushButton = new QPushButton(Form);
pushButton->setObjectName(QStringLiteral("pushButton"));
QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(1);
sizePolicy.setHeightForWidth(pushButton->sizePolicy().hasHeightForWidth());
pushButton->setSizePolicy(sizePolicy);
gridLayout_4->addWidget(pushButton, 0, 0, 1, 3);
scrollArea = new QScrollArea(Form);
scrollArea->setObjectName(QStringLiteral("scrollArea"));
scrollArea->setWidgetResizable(true);
scrollAreaWidgetContents_6 = new QWidget();
scrollAreaWidgetContents_6->setObjectName(QStringLiteral("scrollAreaWidgetContents_6"));
scrollAreaWidgetContents_6->setGeometry(QRect(0, 0, 236, 549));
verticalLayout = new QVBoxLayout(scrollAreaWidgetContents_6);
verticalLayout->setObjectName(QStringLiteral("verticalLayout"));
pushButton_3 = new QPushButton(scrollAreaWidgetContents_6);
pushButton_3->setObjectName(QStringLiteral("pushButton_3"));
verticalLayout->addWidget(pushButton_3);
pushButton_5 = new QPushButton(scrollAreaWidgetContents_6);
pushButton_5->setObjectName(QStringLiteral("pushButton_5"));
verticalLayout->addWidget(pushButton_5);
pushButton_2 = new QPushButton(scrollAreaWidgetContents_6);
pushButton_2->setObjectName(QStringLiteral("pushButton_2"));
verticalLayout->addWidget(pushButton_2);
pushButton_4 = new QPushButton(scrollAreaWidgetContents_6);
pushButton_4->setObjectName(QStringLiteral("pushButton_4"));
verticalLayout->addWidget(pushButton_4);
scrollArea->setWidget(scrollAreaWidgetContents_6);
gridLayout_4->addWidget(scrollArea, 1, 0, 1, 1);
scrollArea_2 = new QScrollArea(Form);
scrollArea_2->setObjectName(QStringLiteral("scrollArea_2"));
scrollArea_2->setWidgetResizable(true);
scrollAreaWidgetContents_7 = new QWidget();
scrollAreaWidgetContents_7->setObjectName(QStringLiteral("scrollAreaWidgetContents_7"));
scrollAreaWidgetContents_7->setGeometry(QRect(0, 0, 235, 549));
verticalLayout_2 = new QVBoxLayout(scrollAreaWidgetContents_7);
verticalLayout_2->setObjectName(QStringLiteral("verticalLayout_2"));
pushButton_7 = new QPushButton(scrollAreaWidgetContents_7);
pushButton_7->setObjectName(QStringLiteral("pushButton_7"));
verticalLayout_2->addWidget(pushButton_7);
pushButton_6 = new QPushButton(scrollAreaWidgetContents_7);
pushButton_6->setObjectName(QStringLiteral("pushButton_6"));
verticalLayout_2->addWidget(pushButton_6);
pushButton_9 = new QPushButton(scrollAreaWidgetContents_7);
pushButton_9->setObjectName(QStringLiteral("pushButton_9"));
verticalLayout_2->addWidget(pushButton_9);
pushButton_8 = new QPushButton(scrollAreaWidgetContents_7);
pushButton_8->setObjectName(QStringLiteral("pushButton_8"));
verticalLayout_2->addWidget(pushButton_8);
scrollArea_2->setWidget(scrollAreaWidgetContents_7);
gridLayout_4->addWidget(scrollArea_2, 1, 1, 1, 1);
scrollArea_3 = new QScrollArea(Form);
scrollArea_3->setObjectName(QStringLiteral("scrollArea_3"));
QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Expanding);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(2);
sizePolicy1.setHeightForWidth(scrollArea_3->sizePolicy().hasHeightForWidth());
scrollArea_3->setSizePolicy(sizePolicy1);
scrollArea_3->setWidgetResizable(true);
scrollAreaWidgetContents_8 = new QWidget();
scrollAreaWidgetContents_8->setObjectName(QStringLiteral("scrollAreaWidgetContents_8"));
scrollAreaWidgetContents_8->setGeometry(QRect(0, 0, 236, 549));
verticalLayout_3 = new QVBoxLayout(scrollAreaWidgetContents_8);
verticalLayout_3->setObjectName(QStringLiteral("verticalLayout_3"));
pushButton_13 = new QPushButton(scrollAreaWidgetContents_8);
pushButton_13->setObjectName(QStringLiteral("pushButton_13"));
verticalLayout_3->addWidget(pushButton_13);
pushButton_11 = new QPushButton(scrollAreaWidgetContents_8);
pushButton_11->setObjectName(QStringLiteral("pushButton_11"));
verticalLayout_3->addWidget(pushButton_11);
pushButton_10 = new QPushButton(scrollAreaWidgetContents_8);
pushButton_10->setObjectName(QStringLiteral("pushButton_10"));
verticalLayout_3->addWidget(pushButton_10);
pushButton_12 = new QPushButton(scrollAreaWidgetContents_8);
pushButton_12->setObjectName(QStringLiteral("pushButton_12"));
verticalLayout_3->addWidget(pushButton_12);
scrollArea_3->setWidget(scrollAreaWidgetContents_8);
gridLayout_4->addWidget(scrollArea_3, 1, 2, 1, 1);
retranslateUi(Form);
QObject::connect(pushButton, SIGNAL(clicked()), pushButton, SLOT(hide()));
QMetaObject::connectSlotsByName(Form);
} // setupUi
void retranslateUi(QWidget *Form)
{
Form->setWindowTitle(QApplication::translate("Form", "Form", Q_NULLPTR));
pushButton->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_3->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_5->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_2->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_4->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_7->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_6->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_9->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_8->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_13->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_11->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_10->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
pushButton_12->setText(QApplication::translate("Form", "PushButton", Q_NULLPTR));
} // retranslateUi
};
namespace Ui {
class Form: public Ui_Form {};
} // namespace Ui
QT_END_NAMESPACE
#endif // DESIGNERTH4586_H