核心提示:procedure FormClone(form : TForm) ;var ms : TMemoryStream; clone : TForm;begin ms := TMemoryStream.C...
procedure FormClone(form : TForm) ;
var
ms : TMemoryStream;
clone : TForm;
begin
ms := TMemoryStream.Create;
try
ms.WriteComponent(form) ;
ms.Position := 0;
clone := TFormClass(form.ClassType).CreateNew(Application) ;
ms.ReadComponent(clone) ;
clone.Left := form.Left + 10;
clone.Top := form.Top + 10;
clone.Show;
finally
ms.Free;
end;
end;
//Usage
procedure TForm1.Button1Click(Sender: TObject) ;
begin
FormClone(Form1) ;
end;