при нажатии на кнопку вызывается функция:
void MainWindow::MenuN_1()
{
QWidget *widget = new QWidget();
widget->setGeometry(QRect(0, 0, 800, 250));
widget->resize(200,300);
QFormLayout *form = new QFormLayout(widget);
n1le_number1 = new QLineEdit;
n1le_number2 = new QLineEdit;
n1l_answer = new QLabel();
QPushButton *pb_check = new QPushButton("Сравнить");
form->setWidget(0, QFormLayout::FieldRole, n1le_number1);
form->setWidget(1, QFormLayout::FieldRole, n1le_number2);
form->setWidget(3, QFormLayout::FieldRole, n1l_answer);
form->setWidget(2, QFormLayout::FieldRole, pb_check);
QPushButton *cancel = new QPushButton("Назад");
form->setWidget(4, QFormLayout::FieldRole, cancel);
connect(cancel, SIGNAL(clicked(bool)), this, SLOT(Menu1()));
setCentralWidget(widget);
connect(pb_check, SIGNAL (clicked()), this, SLOT (pb_pressedN1()));
}
Инетресует вопрос почему ни setGeometry, ни resize ни влияют на размер и положение окна?? Я бы хотел, что бы у окна был минимальный размер (видны полностью виджеты, но нет пустого пространства)
Дело в том, что после того как widget становится дочерним окном MainWindow, он перестает контролировать свой размер и положение, и необходимо устанавливать размер самого MainWindow. То есть setGeometry и resize влияют только на виджеты верхнего уровня.
Так же имеются средства для управления размещением виджетов внутри Layout'ов. Виджет может указать свои минимально и максимально приемлимые размеры, и то как их использовать. Смотрите документацию по layout: http://doc.qt.io/qt-5/layout.html#adding-widgets-to-a-layout
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости