Hi,
dein Problem liegt darin, dass deine Prozedur ChangeFrame so schon eine Instanz erwartet.
Vielleicht solltest Du das mal so machen:
Delphi-Quellcode:
type
tFrameClass = class of tFrame;
...
procedure TForm1.ChangeFrame (FrameClass:tFrameClass);
begin
MainFrame := FrameClass.Create(Self);
MainFrame.Align := alClient;
MeinFrame.Show;
end;
bleibt noch die Frage, was machst Du mit dem vorherigen MainFrame ?
Der sollte vielleicht noch abgeräumt werden.
Delphi-Quellcode:
procedure TForm1.ChangeFrame (FrameClass:tFrameClass);
begin
if Assigned(MainFrame) then
MainFrame.Free;
MainFrame := FrameClass.Create(Self);
MainFrame.Align := alClient;
MeinFrame.Show;
end;
Gruss