Коллеги,
форма создается в дизайнере, на ней размещаются фреймы фиксированного размера и компонуются по вертикали. Видимость фреймов устанавливается в процессе выполнения. Размер формы устанавливается по размеру видимых фреймов перед отображением формы. Примерно так:
...
frame_PaytCondition->setVisible(paytCondition);
frame_PartialPayt->setVisible(partialPayt);
frame_DepartmentalInfo->setVisible(departmentalInfo);
frame_ReceiptDateCollectBank->setVisible(paytCondition);
QApplication::processEvents();
adjustSize();
show();
Это срабатывает (т.е. размер формы по вертикали меняется нужным способом) один раз - при первом (после создания формы) вызове show(). Потом adjustSize() перестает работать.
Это заметно, когда количество видимых фреймов уменьшается по сравнению с предыдущим вызовом.
Если установку размера сделать после отображения:
то все хорошо, но форма неприятно "моргает".
Подскажите, как заставить работать первый вариант, или как убрать это моргание?
Если честно, задолбали эти компоновщики...
UPD: нашел подобный вопрос аж в 2005 году -
http://www.prog.org.ru/index.php?topic=1262.msg4685#msg4685