不可以写在Create里!
你可用类方法来实现!

解决方案 »

  1.   

    给你个例子:
    类方法的使用
      类方法(Class methods)是一类特殊的方法,它们在声明时要以class开头
      type
      TFigure = class
      public
      ...
      class procedure GetInfo(varInfo:TFigureInfo); virtual;
      ...
      end;
      实现时也以class开头
      class procedureTFigure.GetInfo(varInfo:TFigureInfo);
      begin
      ...
      end;
      (具体意义请自行查看帮助)
      乍一看好象平时没有遇到过这个东东,也没有看到过谁用过这个东东,好象这个东东也没有什么大作用,其实不然……
      比如我们有时为输入密码或其他常用数据专门做一个form,但由于其代码都在form定义的unit里面,所以在使用时仅仅需要几行代码,比如
      with TfrmPassword.Create(nil) do
      try
      ShowModal;
      finally
      Free;
      end;
      虽然这样的代码已经很简洁,但如果写个十七八个还是很讨厌的。利用类方法可以使其更简洁!一行足以……
      TfrmPassword = class(TForm)
      ...
      public
      { Public declarations }
      class function Execute:TModalResult;
      end;
      ...
      class function TfrmPassword.Execute:TModalResult;
      begin
      with TfrmPassword.Create(nil) do
      try
      Result := ShowModal;
      finally
      Release; //注意此处必须为release不能为free!
      end;
      end;
      然后只用一行
      TfrmPassword.Execute;
      即可直接完成调用……是否很爽^_^
      

  2.   

    gz. Է㘻뿷ะ?