Не могу понять, баг это или оно так и должно быть.
В ассистенте написано:
void QGridLayout::setRowStretch ( int row, int stretch )
Sets the stretch factor of row row to stretch. The first row is number 0.
The stretch factor is relative to the other rows in this grid. Rows with a higher stretch factor take more of the available space.
The default stretch factor is 0. If the stretch factor is 0 and no other row in this table can grow at all, the row may still grow.
То есть, как я понимаю, чем больше этот фактор, тем больше места будет забирать ряд.
А теперь код:
QWidget *wgt = new QWidget();
QGridLayout *ly = new QGridLayout(wgt);
for (int i = 0; i < 5; ++i)
ly->addWidget(new QTextEdit(wgt), i, 0);
ly->setRowStretch(0, 1);
wgt->show();
По логике, первый ряд должен быть самым большим, а он, напротив, самый маленький.
Может кто-нибудь у себя проверить? Версия Qt - 4.4.