C++ 在第三个窗体的hide()和close()之后,第二个窗体上的Qt show()不起作用,

C++ 在第三个窗体的hide()和close()之后,第二个窗体上的Qt show()不起作用,,c++,qt,qdialog,C++,Qt,Qdialog,我有一个奇怪的问题,我需要在执行一个新的对话框form 3之前隐藏一个formform2,在exec关闭该对话框form 3返回后,我立即在form 2上调用此->show。但是表格2从来没有出现过,我在结束表格3时得到了表格1。 我还注意到,用show替换对form2和form3的exec调用,并在堆上创建子对话框,当form2n3显示时,不会分别隐藏form1和form2,尽管它们仍然可见。。。如果有人知道我错过了什么,请告诉我。 下面是代码的一部分 方法1在关闭表单3时返回表单1,并关闭

我有一个奇怪的问题,我需要在执行一个新的对话框form 3之前隐藏一个formform2,在exec关闭该对话框form 3返回后,我立即在form 2上调用此->show。但是表格2从来没有出现过,我在结束表格3时得到了表格1。 我还注意到,用show替换对form2和form3的exec调用,并在堆上创建子对话框,当form2n3显示时,不会分别隐藏form1和form2,尽管它们仍然可见。。。如果有人知道我错过了什么,请告诉我。 下面是代码的一部分 方法1在关闭表单3时返回表单1,并关闭

form3 f3;
this->hide();
f3.exec();
this->show();
 method 2 (this never hides from 2 but returns to form 2 on closing form3 with close())


 f3=new Menu(this);
 this->hide();
 f3->show();
 this->show();