C++ (Qt)
QMainWindow *window = new QMainWindow(this);
window->setAttribute(Qt::WA_DeleteOnClose);
QScrollArea *scrollArea = new QScrollArea(window);
QWidget *widget = new QWidget(scrollArea);
QGridLayout *layout = new QGridLayout(widget);
qDebug() << "LAYOUT SIZEHINT: " << layout->sizeHint();
widget->setLayout(layout);
qDebug() << "WIDGET SIZE: " << widget->size();
qDebug() << "WIDGET SIZEHINT: " << widget->sizeHint();
qDebug() << "SCROLLAREA SIZE DO: " << scrollArea->size();
qDebug() << "SCROLLAREA SIZEHINT POSLE: " << scrollArea->sizeHint();
scrollArea->setWidgetResizable(true);
scrollArea->setBackgroundRole(QPalette::Dark);
qDebug() << "SCROLL AREA DO MINIMUM: " << scrollArea->minimumSize();
qDebug() << "SCROLL AREA DO MAXIMUM: " << scrollArea->maximumSize();
scrollArea->setWidget(widget);
qDebug() << "SCROLL AREA POSLE MINIMUM: " << scrollArea->minimumSize();
qDebug() << "SCROLL AREA POSLE MAXIMUM: " << scrollArea->maximumSize();
qDebug() << "SCROLLAREA SIZE POSLE: " << scrollArea->size();
qDebug() << "SCROLLAREA SIZEHINT POSLE: " << scrollArea->sizeHint();
window->setCentralWidget(scrollArea);
qDebug() << "WINDOW SIZE: " << window->size();
qDebug() << "WINDOW SIZEHINT: " <<window->sizeHint();
LAYOUT SIZEHINT: QSize(867, 456)
WIDGET SIZE: QSize(100, 30)
WIDGET SIZEHINT: QSize(867, 456)
SCROLLAREA SIZE DO: QSize(100, 30)
SCROLLAREA SIZEHINT DO: QSize(158, 106)
SCROLL AREA DO MINIMUM: QSize(0, 0)
SCROLL AREA DO MAXIMUM: QSize(16777215, 16777215)
SCROLL AREA POSLE MINIMUM: QSize(0, 0)
SCROLL AREA POSLE MAXIMUM: QSize(16777215, 16777215)
SCROLLAREA SIZE POSLE: QSize(100, 30)
SCROLLAREA SIZEHINT POSLE: QSize(468, 312)
WINDOW SIZE: QSize(100, 30)
WINDOW SIZEHINT: QSize(468, 312)
QDialog заменил на QMainWindow.
нужно чтобы размер window подстраивался под контент, а он получается фиксированным!!! (WINDOW SIZEHINT: QSize(468, 312) ) почему?
надо, чтобы LAYOUT SIZEHINT: QSize(867, 456) = WINDOW SIZEHINT: QSize(468, 312)
как это можно добиться?!