Dialog1* dialog1 = new Dialog1();int result = dialog1->exec();
void Dialog1::showDialog2(){ // Прячу dialog1. Спрятался. QWidget::setVisible(false); // Вызываю Dialog2. Появился. Dialog2* d = new Dialog2(this); int result = d->exec(); if (result == 1) { // забираю данные из вызванной формы } // Делаю Dialog1 видимым. Теперь не пропадает! QWidget::setVisible(true);}