Здравствуйте, столкнулся с такой проблемой, в цикле создаются кнопки:
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | procedure Tmain . SpeedButton2Click(Sender: TObject);
var
i: integer ;
begin
i:=ADOTable1 . recordcount;
while i> 0 do
begin
but:=Tspeedbutton . Create(self);
but . Tag:=i;
but . Parent:=Flowpanel1;
but . Width:= 120 ;
but . Height:= 40 ;
but . Cursor:=crHandPoint;
but . AlignWithMargins:= true ;
DataSource1 . DataSet . RecNo:=i;
but . Caption:=DataSource1 . DataSet . Fields[ 1 ].AsString;
but . OnClick:=main . click;
i:=i- 1 ;
end ;
end ;
|
после выполнения процедуры все кнопки имеют тег "1", проверял с помощью showmessage.
А если убрать цикл и создать только одну кнопку, то её тег будет "29" (29 строк в таблице).
Пробовал присваивать имя кнопкам, но тоже с циклом на выходе у всех кнопок значение "name" равно "but_1", а без цикла одна кнопка создаётся "but_29"
Помогите пожалуйста, как нужно изменить процедуру?