可以的呀!
你没有加“uses Unit2;”吧?!

解决方案 »

  1.   

    你是不是没有引用该药调用的窗体,或者是用下面的代码试试吧:
    procedure .............
    var temp:Tform2;
    begin
        temp:=TForm2.Create(self);
        temp.Showmodal;
        .....
    temp.free;
    ....
    end;
      

  2.   

    showmodal是显示模式窗口,show是显示非模窗口,
    你在一个窗口调用另一个时,先应该应用它的程序,即uses unit
    在mdi的程序中调用别的窗口时就不用show和showmodl了,
    明白了吗?兄弟请指教
      

  3.   

    form2没有close,你将form2close就不会有这个问题了。大概是form2被form1遮住了,你没有看见。
      

  4.   

    注意Form2是否Auto Create form,再留意Form2的Visible属性。
      

  5.   

    谢谢大家,大家以上说的我都做了:Unit1中包含了Unit2,Form2不是Auto Create Form,Form2的visible属性为true,我用
    procedure .............
     var temp:Tform2;
    begin
        temp:=TForm2.Create(self);
        temp.Showmodal;
        .....
    temp.free;
    ....
    end; 显示时出现了一个错误提示:"Can not make a visible window modal"。
    看来大家是帮不了我了,可能是逻辑上的错误。
      

  6.   


    temp:=TForm2.Create(self);
    改成
    temp:=TForm2.Create(application); 
    试试
        
        
      

  7.   

    这是个初学者很容易碰到的问题,哈哈。我编的程序也曾经出现过这种毛病,但现在好了。
    有一次我在Form2的Close事件代码中加上Action:=cafree;就没事了,你可以试试。
      

  8.   

    KAMI(烤麦)兄说的对,将form2的visible属性设为false就可以了