
22.03.2011, 10:36
|
 |
Прохожий
|
|
Регистрация: 05.03.2011
Сообщения: 18
Репутация: 10
|
|
Вот код (пардон за формат). Поправка: количество строк в отличии от столбцов может меняться:
Код:
var
arr3:array of array of TButton;
//.....................................................
procedure TForm1.Label1Click(Sender: TObject);
var i, j: byte;
n: integer;
count:String;
begin
count:=inputbox('Введите клоичество вопросов',' ','10');
try
n := StrToInt(count);
except
on EConvertError do ShowMessage('???');
end;
setlength(arr3,n,4);
for i:=0 to n-1 do
for j:=0 to 3 do begin
Arr3[i,j]:=Tbutton.Create(Self);
Arr3[i,j].Parent := Self;
Arr3[i,j].Top:=(i-1)*Arr3[i,j].Height+50;
Arr3[i,j].Left:=(j-1)*Arr3[i,j].Width+800;
Arr3[i,j].Width :=50;
Arr3[i,j].tag:=(i+1)*(j+1); //чтобы обращаться к контролу по его тагу
Arr3[i,j].caption :=IntToStr ((i+1)*(j+1));
TButton( Arr3[i,j]).onClick:=arr1Click;//присвоил обработчику процедуры OnClick обычной кнопки обработчик массива кнопок процедуру arr1Click,
end;
end;
Админ: Не забываем про теги!
в итоге по тэгам выходит так:
1,2,3,4
2,4,6,8
3,6,9,12,
а мне надо чтоб
1,2,3,4
5,6,7,8
|