Hola ASAPLTDA.
Por otro lado, si deseas continuar usando forms como en tu código, creo que sería mejor hacer algo como:
Código Delphi
[-]
...
procedure TForm1.FormTabSheetClose(Sender: TObject; var Action: TCloseAction);
begin
ShowMessage(Format('%s se cerrará', [TForm(Sender).Name]));
Action:= caFree;
end;
procedure CreateFormInTabSheet(const FormName: string; FormClose: TCloseEvent;
TabSheet: TTabSheet);
begin
with TForm.Create(TabSheet) do
begin
Name:= FormName;
Caption:= Name;
Hint:= Name;
FormStyle:= fsNormal;
BorderStyle:= bsSizeable;
WindowState:= wsMaximized;
OnClose:= FormClose;
Parent:= TabSheet;
Show;
end;
end;
procedure TForm1.btnCreateClick(Sender: TObject);
var
i: Integer;
begin
with PageControl1 do
for i:= 0 to PageCount-1 do
CreateFormInTabSheet(Format('Form_TabSheet%d',[i+1]),
FormTabSheetClose, Pages[i]);
end;
Saludos