Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.481 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3
  Alt 26. Mär 2003, 18:31
Zitat:
For AnzahlN:=1 to AnzahlN do
Das dürfte wohl ein Tippfehler sein. Also werde ich es mal so stehen lassen.
Du solltest die Nummerrierung vielleicht auf 0..Anzahl-1 ändern, damit du nicht durcheinander kommst, da alle von Borland bereitgestellten Funktionen auf diese Art benutzen.


Der Typecast nach TButton ist nicht nötig, da jede Komponente auch die Methode .Free besitzt, die den passenden Destructor aufruft.


Zitat:
Gibt es da vielleicht irgendeine Methode die überprüft, ob ein Objekt existiert?
Ja. FindComponent liefert nil, wenn die Komponente nicht vorhanden ist. Und die Methode .Free überprüft vor dem Destruktor-Aufruf, ob das Objekt vorhanden ist, also ungleich nil ist.
(Der as Operator produziert bei "nil as TButton" eine EInvalidCast Exception)

Delphi-Quellcode:
for ButtonNummer := 1 to AnzahlN do
  FindComponent('Button' + IntToStr(ButtonNummer)).Free;
  Mit Zitat antworten Zitat