Hallo orakel
eigentlich habe diesen Beitrag schon gestern gepostet. Ist aber irgendwie nicht angekommen.
Also hier die Lösung:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
Fenster2 : TForm1;
MStream : TMemoryStream;
begin
Fenster2:=TForm1.CreateNew(Application);
// CreateNew mal in der OH nachschlagen
MStream:=TMemoryStream.Create;
Try
MStream.WriteComponent(Self);
MStream.Position:=0;
MStream.ReadComponent(Fenster2);
Fenster2.Visible:=False;
// Für Visible wird True aus dem Stream gelesen. Muss aber False sein
// nicht notwendig ->
Fenster2.Left:=Left+20;
Fenster2.Top:=Top+20;
// <- nicht notwendig
Fenster2.ShowModal;
Finally
MStream.Free;
// Fenster2.Release;
end;
end;
Der Tip von Maximov mit RegisterClass ist natürlich Voraussetzung damit es funktioniert.