I need to create Editboxes dynamically, which I create using a loop (j loop variable). 5 were successfully created, but in the 6th component, the array shows nil (during debugging), i.e. Nothing was actually created. Again, the 7th and 8th components are created successfully, but the 9th is not. I declared type variables-
sud,eud,fud,a,e,c,d,na,st1,st2,citye,statee,pinne,cn,cr,cb,ca: array [0..9] of TEdit;
crr,vcl: array [0..9] of TEdit;
All other components that I announced above are successfully created in this loop.
crr[j+3]:=tEdit.Create(coregroup[i]);
crr[j+3].Parent:=coregroup[i];
crr[j+3].Top:= 77;
crr[j+3].Left:=83+(j*57);
crr[j+3].Width:=17;
I am in the same situation with the code for the last two days. If more clarification is required, I can provide you.
Actual code is
sud,eud,fud,a,e,c,d,na,st1,st2,citye,statee,pinne,cn,cr,cb,ca: array [0..9] of TEdit;
crr,vcl: array [0..9] of TEdit;
dud,leud,lfud,b,f,g,h,nal,st1l,st2l,cityel,stateel,pinnel,dt,cl,crl,cbl,cal,vce: array [0..9] of TLabel;
count,ppointer:integer;
rcaldt: array[0..5] of TDateTimePicker;
coregroup:array of TGroupBox;
var
i,j,kk,aa,x:integer;
divv:array[0..3] of Tlabel;
u,m,k:integer;
begin
k:=0;
m:=0;
SetLength(coregroup,5);
for i:=0 to count-1 do
begin
coregroup[i]:= tGroupbox.Create(groupbox11);
coregroup[i].Parent:=groupbox11;
coregroup[i].SetBounds(8+(i*223),140,x,170);
if ctvt.ItemIndex=0 then
coregroup[i].Caption:='C T'+ IntToStr((aa*i)+1)
else
coregroup[i].Caption:='V T'+ IntToStr((aa*i)+1);
cl[0]:= tLabel.Create(coregroup[i]);
cl[0].Parent:=coregroup[i];
cl[0].Top:= 20;
cl[0].Left:=8;
cl[0].Caption:= 'CORE';
cl[0].Font.Style := cl[0].Font.Style + [fsBold];
cbl[0]:= tLabel.Create(coregroup[i]);
cbl[0].Parent:=coregroup[i];
cbl[0].Top:= 50;
cbl[0].Left:=8;
cbl[0].Caption:= 'BURDEN';
cbl[0].Font.Style := cbl[0].Font.Style + [fsBold];
crl[0]:= tLabel.Create(coregroup[i]);
crl[0].Parent:=coregroup[i];
crl[0].Top:= 80;
crl[0].Left:=8;
crl[0].Caption:= 'RATIO';
crl[0].Font.Style := crl[0].Font.Style + [fsBold];
cal[0]:= tLabel.Create(coregroup[i]);
cal[0].Parent:=coregroup[i];
cal[0].Top:= 110;
cal[0].Left:=8;
cal[0].Caption:= 'ACLASS';
cal[0].Font.Style := cal[0].Font.Style + [fsBold];
vce[0]:= tLabel.Create(coregroup[i]);
vce[0].Parent:=coregroup[i];
vce[0].Top:= 140;
vce[0].Left:=8;
vce[0].Caption:= 'VCLASS';
vce[0].Font.Style := cal[0].Font.Style + [fsBold];
for j:=0 to ((StrToInt(ncorct.Text))-1) do
begin
if cn[j]=nil then
begin
cn[j]:=tEdit.Create(coregroup[i]);
cn[j].Parent:=coregroup[i];
cn[j].Top:= 17;
cn[j].Left:=52+(j*57);
cn[j].Width:=50;
cb[j]:=tEdit.Create(coregroup[i]);
cb[j].Parent:=coregroup[i];
cb[j].Top:= 47;
cb[j].Left:=71+(j*57);
cb[j].Width:=30;
cr[j]:=tEdit.Create(coregroup[i]);
cr[j].Parent:=coregroup[i];
cr[j].Top:= 77;
cr[j].Left:=56+(j*57);
cr[j].Width:=17;
ca[j]:=tEdit.Create(coregroup[i]);
ca[j].Parent:=coregroup[i];
ca[j].Top:= 107;
ca[j].Left:=61+(j*60);
ca[j].Width:=35;
divv[j]:=tLabel.Create(coregroup[i]);
divv[j].Parent:=coregroup[i] ;
divv[j].Top:=80;
divv[j].Left:=74+(j*57);
divv[j].Caption:='/';
crr[j]:=tEdit.Create(coregroup[i]);
crr[j].Parent:=coregroup[i];
crr[j].Top:= 77;
crr[j].Left:=83+(j*57);
crr[j].Width:=17;
vcl[j]:=tEdit.Create(coregroup[i]);
vcl[j].Parent:=coregroup[i];
vcl[j].Top:= 137;
vcl[j].Left:=61+(j*60);
vcl[j].Width:=35;
end
else
if cn[j+3]=nil then
begin
cn[j+3]:=tEdit.Create(coregroup[i]);
cn[j+3].Parent:=coregroup[i];
cn[j+3].Top:= 17;
cn[j+3].Left:=52+(j*57);
cn[j+3].Width:=50;
cb[j+3]:=tEdit.Create(coregroup[i]);
cb[j+3].Parent:=coregroup[i];
cb[j+3].Top:= 47;
cb[j+3].Left:=71+(j*57);
cb[j+3].Width:=30;
cr[j+3]:=tEdit.Create(coregroup[i]);
cr[j+3].Parent:=coregroup[i];
cr[j+3].Top:= 77;
cr[j+3].Left:=56+(j*57);
cr[j+3].Width:=17;
ca[j+3]:=tEdit.Create(coregroup[i]);
ca[j+3].Parent:=coregroup[i];
ca[j+3].Top:= 107;
ca[j+3].Left:=61+(j*60);
ca[j+3].Width:=35;
divv[j+3]:=tLabel.Create(coregroup[i]);
divv[j+3].Parent:=coregroup[i] ;
divv[j+3].Top:=80;
divv[j+3].Left:=74+(j*57);
divv[j+3].Caption:='/';
***crr[j+3]:=tEdit.Create(coregroup[i]);
crr[j+3].Parent:=coregroup[i];
crr[j+3].Top:= 77;
crr[j+3].Left:=83+(j*57);
crr[j+3].Width:=17;***
vcl[j+3]:=tEdit.Create(coregroup[i]);
vcl[j+3].Parent:=coregroup[i];
vcl[j+3].Top:= 137;
vcl[j+3].Left:=61+(j*60);
vcl[j+3].Width:=35;
end
else
begin
cn[j+6]:=tEdit.Create(coregroup[i]);
cn[j+6].Parent:=coregroup[i];
cn[j+6].Top:= 17;
cn[j+6].Left:=52+(j*57);
cn[j+6].Width:=50;
cb[j+6]:=tEdit.Create(coregroup[i]);
cb[j+6].Parent:=coregroup[i];
cb[j+6].Top:= 47;
cb[j+6].Left:=71+(j*57);
cb[j+6].Width:=30;
cr[j+6]:=tEdit.Create(coregroup[i]);
cr[j+6].Parent:=coregroup[i];
cr[j+6].Top:= 77;
cr[j+6].Left:=56+(j*57);
cr[j+6].Width:=17;
ca[j+6]:=tEdit.Create(coregroup[i]);
ca[j+6].Parent:=coregroup[i];
ca[j+6].Top:= 107;
ca[j+6].Left:=61+(j*60);
ca[j+6].Width:=35;
divv[j+3]:=tLabel.Create(coregroup[i]);
divv[j+3].Parent:=coregroup[i] ;
divv[j+3].Top:=80;
divv[j+3].Left:=74+(j*57);
divv[j+3].Caption:='/';
crr[j+6]:=tEdit.Create(coregroup[i]);
crr[j+6].Parent:=coregroup[i];
crr[j+6].Top:= 77;
crr[j+6].Left:=83+(j*57);
crr[j+6].Width:=17;
vcl[j+6]:=tEdit.Create(coregroup[i]);
vcl[j+6].Parent:=coregroup[i];
vcl[j+6].Top:= 137;
vcl[j+6].Left:=61+(j*60);
vcl[j+6].Width:=35;
end;
end;
end;
end
else
begin
one.Enabled:=false;
onem.Enabled:=false;
end;
end;