Здравствуйте, пытаюсь создать двумерный массив из Edit-ов, рядом с которым будет Lable, в которые будут вноситься значения a[i,j] (i,j=1..n, n вводится с клавиатуры). При этом если i не равно j, то в лэйбл вводится 2a[i,j]. Короче говоря, нужно заполнить значения в формуле

. И потом, эти значения из эдитов занести в массив a[i,j]. но пока почему-то не все "а" создаются.
Скорее всего я не правильно описал процедуру создания компонентов, но по-другому я не придумал((( Может подскажите как это сделать?
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | procedure TForm1 . Button1Click(Sender: TObject);
var
Lab: Array of array of TLabel;
Ed: Array of array of TEdit;
n,i,j: Integer ;
begin
n:=strtoint(edtkp . text);
SetLength(Lab, n+ 1 ,n+ 1 );
SetLength(Ed, n+ 1 ,n+ 1 );
for i := 0 to n- 1 do
begin
j:= 0 ;
while j<=n- 1 do
begin
Lab[i,j] := TLabel . Create(Self);
Lab[i,j].Parent := Self;
Lab[i,j].Left := 10 ;
Lab[i,j].Top := i* 30 + 250 ;
Lab[i,j].Caption := 'a' +IntToStr(i+ 1 )+IntToStr(j+ 1 )+ '=' ;
Ed[i,j] := TEdit . Create(Self);
Ed[i,j].Parent := Self;
Ed[i,j].Left := 150 ;
Ed[i,j].Top := i* 30 + 250 ;
Ed[i,j].Text := '' ;
Inc(j);
end ;
end ;
end ;
|