有form1、form2、form3三个窗体,在form1中button1调用form2。
  button1click事件
  form2.ShowModal;在form2中按钮button1,单击button1,调用form3.button1click事件
   form3.Showmodal;
   close;
在form3中有按钮button1,单击返回form2,同时关闭自己.
button1clcik事件
   form2.showmodal;
   close;现在的问题是:在form2中调用form3时自己并没有关闭,造成form3返回form2时,出错,请帮忙!

解决方案 »

  1.   

    1 在form3的Onshow中close form2
    2 form2中按钮button1,单击button1用
    postmessage(handle,WM_CLOSE,0,0);
    form3.Showmodal;
      

  2.   

    使用showmodal的时候就会出现这些问题,
    同意楼上的,你试试发消息来关闭窗体
      

  3.   

    按 firetoucher(风焱) ( ) 信誉:181 代码重写如下,问题依然存在,请继续帮忙。
    有form1、form2、form3三个窗体,在form1中button1调用form2。
      button1click事件
      form2.ShowModal;在form2中按钮button1,单击button1,调用form3.button1click事件
       postmessage(handle,WM_CLOSE,0,0);
       form3.Showmodal;
       在form3中有按钮button1,单击返回form2,同时关闭自己.
    button1clcik事件
       form2.showmodal;
       close;
    同时在form3的Show事件中添加代码如下:
       form2.close;在线等候。
      

  4.   

    procedure TForm2.Button1Click(Sender: TObject);
    begin
      Self.Hide;    //hide 即可。
      form3.ShowModal;
    end;procedure TForm3.Button1Click(Sender: TObject);
    begin
      form2.Show;
      close;
    end;
      

  5.   

    非常感谢 fansnaf(投币一元) ( ) 信誉:100 的回复。