应该不需要Show或者ShowModal就可以直接使用的。
你的代码?

解决方案 »

  1.   

    form2.showmodal返回时不需要调用form1.show/showmodal;
      

  2.   

    怎么会不能用?
    你的form2是怎么创建的?是不是释放的时候出了问题?
      

  3.   

    你如果在FORM1上面放了按纽,点击它执行FORM2。showmodal
    然后关闭FORM2的话,不应该会影响到FORM1的
    或者你用MDI来实现比较好点
      

  4.   

    首先你说的不太明白;
    再者,主窗体就是主窗体(form1)
    那么,为什么form2返回来,还要用form1.show?或是form1.showmodal;
    你应该先知道,如果主窗体关闭,那么这个程序就知道了;
    你的意思是不是用form1调用form2.showmodal?
    或是在form1中 
      form2:=Tform2.application.create(application);
      form2.showmodal;
    那么,无论是上述那种情况,form1一直到是显示的,你没有关闭 ;
    或者你调用hint//但是没有意义;
    总的来说,form1:主窗体;
             form2:查询窗体;
             当form2关闭时,你不用再form1.show or form1.showmodal;
    如:
    procedure button1click(sender:Tobject);
    var
      form:Tform2;
    begin
      try
      form2:=Tform2.create(application);
      form2.showmodal;
      finally
      form2.free;
      end;
      dosomething;
      //不要form1.show or form1.showmodal;
    end;
      

  5.   

    我不是用动态创建的
    form1的代码(按纽):form2.showmodal
    form2的代码(也是按纽,分别是确定,取消,清除,在确定和取消按纽上有下面的代码):form2.hide form1.show/form1.showmodal
    没有你说的那么复杂