Я работаю над диалогом изменения формы. Предполагается, что он увеличивается при нажатии кнопки «Дополнительно» и сжимается при повторном нажатии. Я использую layout() -> addWidget()
и layout() -> removeWidget()
. Он правильно увеличивается, когда я добавляю виджет, но когда я что-то удаляю, он не уменьшается. Я пытался использовать layout() -> update()
и layout() -> updateGeometry()
, но ни один из них не работал.
РЕДАКТИРОВАТЬ ** Вот функции, которые я вызываю при нажатии кнопок.
void findDialog::small()
{
replaceBox -> hide();
layout() -> removeWidget(replaceBox);
moreButton -> show();
updateGeometry();
}
void findDialog::extended()
{
layout() -> addWidget(replaceBox);
replaceBox -> show();
moreButton -> hide();
updateGeometry();
}
replaceBox
is a QGroupBox
moreButton
is a QPushButton
findDialog
is a QDialog inherited class
layout()->invalidate()
перед обновлением, чтобы удалить кешированную информацию, может помочь - person Thalia   schedule 17.06.2015