可以,不过form1和form2都应该是全局变量,而且Create的参数是Application。

解决方案 »

  1.   

    if Form2=nil then
        Form2:=TForm2.Create(self);
    Form2.Show;
    form1.close;
      

  2.   

    在form2.onclose中添加
    action:=cafree;
    form2:=nil;
    (建议你查一下以前的帖子)
      

  3.   

    若Form1是主窗体,则不可关闭,否则整个程序就结束了。你可以这样:
      Form2.Show;
      Form1.Hide;
    或:
      Form2.ShowModal;
      Form1.Hide;
    注意:Unit1中要Uses Unit2;
         在Form2关闭前要先恢复Form1
         Form1.Show; 
      

  4.   

    unit1中uses unit2
    在program的options菜单中将form2设为非自动建立,然后
    application.createform(tform2,form2);
    form2.show;
    form1.hide;
    这样你就可以在需要的时候才建立form2
    在form2的onclose中写上
    action:=cafree;
    保证不用时释放
      

  5.   

    to li_zhifu(东北人): 
    Application.showmainform:=false