Thema: Delphi Button Selbstzerstörung

Einzelnen Beitrag anzeigen

idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#27

AW: Button Selbstzerstörung

  Alt 26. Aug 2015, 11:32
Zitat:
Es handelt sich nicht um "gewöhnliche Buttons" die ich dynamisch erstellen muss, sondern um irgendwelche Objekte.
Auch da wäre zu überlegen, ob es nicht besser wäre, die Objekte (Nachdem sie auf der Form dargestellt werden, gehe ich davon aus, dass sie alle von TControl abgeleitet sind, und es gibt wohl nur eine begrenzte Anzahl von Varianten), die man nicht mehr braucht, auf Reserve vorzuhalten, statt sie zu zerstören:

Delphi-Quellcode:
Type

Form1=class(Tform)
  private
  FObjects: array of TControl;

...

function Form1.Newcontrol (Typ: TControlClass): TControl;
var
  l: integer;
  o: TControl;
begin
for o in FObjects do
    if not o.visible and (o is Typ)
    then begin
         o.Visible:=true;
         result:=o;
         exit;
         end;
result:=Typ.Create(self);
result.Parent:=self;
l:=length(FObjects);
setlength(FObjects, l+1);
FObjects[l]:=result;
end;
und die Controls, die man gerade nicht braucht, statt zu löschen, einfach invisible setzen.

Geändert von idefix2 (26. Aug 2015 um 11:34 Uhr)
  Mit Zitat antworten Zitat