function FrmShow(FrmName: TFrmName): Boolean;
begin
  FrmName := TFrmName.Create(Application);
  with FrmName do
  begin
    ShowModal;
    Free;
  end;
end;

解决方案 »

  1.   

    去掉Free,或者改为
    begin
      try
        FrmName := TFrmName.Create(Application);
        FrmName.ShowModal;
      except
        FrmName.Free;
      end;
    end;
      

  2.   

    begin
      try
        FrmName := TFrmName.Create(Application);
        FrmName.ShowModal;
        Result := true;
      except
        FrmName.Free;
        Result := false;
      end;
    end;
      

  3.   

    TFrmName 是什麼??? 有問題
      

  4.   

    function FrmShow(FrmName: TForm): Boolean;
    begin
      try
        FrmName := TFrmName.Create(Application);
        FrmName.ShowModal;
        Result := true;
      except
        FrmName.Free;
        Result := false;
      end;
    end;
      

  5.   

    [Error] PublicUnit.pas(141): Undeclared identifier: 'TFrmName'
      

  6.   

    TFrmName应该是窗体,TFrmName:TFrom.
      

  7.   

    如果你的函数不在FrmName这个窗体里,你要先引用FrmName 这个窗体单元
      

  8.   

    function FrmShow(FrmName: TForm): Boolean;
    begin
      try
        FrmName := TFrmName.Create(Application);
        FrmName.ShowModal;
        Result := true;
      except
        FrmName.Free;
        Result := false;
      end;
    end;跟楼上的!
      

  9.   

    我要根据不同的参数弹出不同的窗口
    FrmShow(Form1); //弹出Form1
    FrmShow(Form2); //弹出Form2
    FrmShow(Form3); //弹出Form3
    FrmShow(Form4); //弹出Form4
    FrmShow(Form5); //弹出Form5
      

  10.   

    DELPHI版高手如云,竟然解决不了这个小问题