![]() |
For Schleife mit unvollständiger Reihe
Hallo zusammen! Ich hätte da mal ne Frage:
Ich kann doch, damit ich nicht 20 durchnummerierten Edit Feldern einzeln einen Text zuweisen muss, eine For Schleife verwenden (heißt doch for- Schleife, oder?). Wenn ich das jetzt zusammen mit FindComponent mache sieht das bei mir so aus.
Code:
Die ButtonNummer Variable wird immer um 1 vergrößert.
For AnzahlN:=1 to AnzahlN do
(FindComponent('Button'+IntToStr(ButtonNummer)) as TButton).free; So, meine Frage. Kann ich das auch machen, wenn die Reihe von Button Namen unterbrochen ist? Also, wenn es z.B. Button1,2,3,4,6,7,8,9 und 10 gibt aber keinen Button 5. Gibt es da vielleicht irgendeine Methode die überprüft, ob ein Objekt existiert? Danke schon mal. Man liest sich. :bouncing4: Stanlay :bounce1: |
Hallo Stanley,
soweit hast Du recht und hier der Code wie man z.B. eine bestimmte Zahl ausschliessen kann.
Delphi-Quellcode:
Grüsse, Daniel :hi:
procedure TForm1.Button1Click(Sender: TObject);
var iFor: Integer; begin for iFor := 0 to 9 do begin if iFor = 5 then begin ShowMessage('Tue hier was wenn die Zahl = 5 ist'); end else begin ShowMessage('Tue hier was bei allen anderen Zahlen'); end; end; end; |
Zitat:
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:
(Der as Operator produziert bei "nil as TButton" eine EInvalidCast Exception)
Delphi-Quellcode:
for ButtonNummer := 1 to AnzahlN do
FindComponent('Button' + IntToStr(ButtonNummer)).Free; |
Cool. Ich glaub' jetzt hab ichs verstanden. Danke.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz