Vamos a ver si alguien me puede ayudar. He visto el hilo siguiente, que además es exactamente lo que pretendo hacer:
http://www.clubdelphi.com/foros/show...light=TabSheet
Yo pongo todo el siguiente código:
Código:
en fMain
private
Contador : Integer;
public
Tab : array[1..5] of TTabSheet;
procedure TfMain.Button2Click(Sender: TObject);
var
CL:TfClientes;
begin
if PageControl1.PageCount<=5 then begin
Contador:=PageControl1.PageCount;
inc(Contador);
Tab[Contador]:=TTabSheet.Create(nil);
with Tab[Contador] do begin
PageControl:=PageControl1;
Name:='tsCL'+IntToStr(Contador);
Caption:='Clientes '+inttostr(pageindex);
end;
CL:=TfClientes.Create(Self);
with CL do begin
Parent:=Tab[Contador];
Numero:=Contador;
Show;
end;
end;
end;
y en fClientes
public
Numero:integer;
procedure TfClientes.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caNone;
fMain.Tab[Numero].Free;
end;
pero me produce el error 'Access violation' de vez en cuando, exactamente en la intrucción donde se destruye el TabSheet. Ya no se que más probar. Hay alguna manera de conseguir lo mismo pero con otro código?. Gracias por vuestra ayuda y un saludo.