Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
Delphi 10 Seattle Enterprise
|
AW: Button Selbstzerstörung
25. Aug 2015, 13:43
Mit dem IdleWorker (s. da -> http://www.delphipraxis.net/1305417-post11.html) geht das einfach so
Delphi-Quellcode:
uses
IdleWorker;
procedure TForm1.abtnClick(Sender: TObject);
begin
TIdleWorker.Default.Execute(
procedure
var
i: Integer;
begin
// alte Buttons entsorgen
for i := low(btns) to high(btns) do
btns[i].Free; // ein DisposeOf wäre hier besser
// neue Länge für das Array
SetLength(btns, random(9) + 1 );
// neue Buttons erzeugen
for i := low(btns) to high(btns) do
begin
btns[i] := TButton.Create(nil);
btns[i].name := 'abutton' + IntToStr(i);
btns[i].text := 'Button' + IntToStr(i+1);
btns[i].Parent := GridLayout1;
btns[i].OnClick := abtnClick;
end;
end );
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
|