Ver Mensaje Individual
  #1  
Antiguo 06-06-2006
nenufer nenufer is offline
Miembro
 
Registrado: dic 2005
Posts: 90
Reputación: 19
nenufer Va por buen camino
Question problema con array de componentes

holaa!!
Estoy creando paneles en tiempo de ejecucion y quiero guardarlos en un array para luego crear en ellos un Timage. El problema es que los paneles no se guardan en el array. Las posiciones del array son nil. El array lo declaro global y de forma dinamica.

Código Delphi [-]
Paneles: array of TPanel

El codiog que utilizo es:

Código Delphi [-]
procedure TForm.CreaPaneles();
var
 x,y,i:Integer;
 PnlImagen : TPanel;
begin
 x := PnlImagenes.Width;
 y := PnlImagenes.Height;
 
 setlength(ArPaneles,2);//Array para los panes
 
 for i:=low(Paneles) to high(Paneles) do
  begin
   PnlImagen := TPanel.Create(PnlImagenes);
   PnlImagen.Parent := PnlImagenes;
   PnlImagen.Visible := true;
   if i=0 then
     TamPanel(x,y,PnlImag) //Procedimiento que fija longitudes del panel
   else
     if i=1 then
       TamPanel(x div 2,y div 2,PnlImagen);
end;
end;
 
procedure TForm.CreaImagen(NumImag : Integer);
var
 i : integer;
begin
 
 for i:=0 to NUmImag-1 do
  begin
   Img := TImage.Create(ArPaneles[NImagenes]); //El problema esta aqui
   Img.Parent := ArPaneles[NImagenes];//y aqui
   Img.Visible := true;
   Img.Align := alclient;
   Img.Stretch := true;
 end;
end;


El error que me da es:Acces violation at address 00403456 in module project.exe. Read of address 0000022E.

He puesto puntos de ruptura y veo el que array esta nil.
No se que hago mal. Si alguien me puede ayudar, gracias de antemano
Responder Con Cita