Удаление кнопок не срабатывает в таком раскладе.
Но если сделать так
Код:
for i:=Panel1.ComponentCount-1 downto 0 do
if pos('but', Panel1.Components[i].name) > 0 then
Panel1.Components[i].free;
то удаляются нормально.
И да, такой расклад получается вообще идеальным. Спасибо
Alegun!
с глобальным массивом кнопок тоже работает
Код:
var
b: array of tbutton;
procedure TForm1.CreateButtons;
var
i: integer;
begin
setlength(b,3);
for i := 0 to 2 do
begin
b[i]:= TButton.Create(panel1);
b[i].Parent:= panel1;
b[i].Name:= 'but'+ IntToStr(i);
end;
end;
procedure TForm1.RemoveButtons;
var
i,c: integer;
begin
c:= length(b);
for i:=0 to c-1 do
FreeAndNil(b[i]);
SetLength(b,0);
end;
но с массивом более громоздко выходит.