![]() |
Komponenteneigenschaften in For-Schleife ändern...
Hallo, Leute.
Ich habe Folgendes Problem: Ich habe in meiner Anwendung viele Labels, die ich per Timer jede Sekunde an einem Anderen Ort auf dem Bildschirm anzeigen will (Es sollen Fragezeichen über den Bildschirm wandern...). Das möchte ich per for-Schleife realisieren. Gibt es eine Funktion, mit der man Komponenten nach ihrem Namen, welcher vorher der Funktion als String bzw. PChar mitgeteilt wurde auswählen kann? Hier ein Beispiel wie ich es meine:
Delphi-Quellcode:
MfG lhmultimedia
procedure TGameForm.FragezeichenTimer(Sender: TObject);
begin For i := 1 to 22 do begin Randomize; WähleKomponenteNachNamen('Label' + IntToStr(i)).Left := Random(700); Randomize; WähleKomponenteNachNamen('Label' + IntToStr(i)).Top := Random(500); end; end; |
Re: Komponenteneigenschaften in For-Schleife ändern...
HI lhmultimedia,
ja es gibt solch eine Funktion. Diese heißt FindComponent. Zu deinem Code: 1. es reicht, Randomize nur 1x aufzurufen. Was würdest du erwarten, wenn du 44 mal den Zufallsgenerator aufs neue setzt? - Klar, eine Verlangsamung des Programms. Random ist ein Pseudozufallsgenerator. Das heißt, dass er die Zufallszahlen sich nicht denkt, sondern errechnet. Dadurch ist es möglich eine fortlaufende Kette von Zahlen zu bekommen. 2. unter "über den Bildchirm Wandern" hab ich mir aber was anderes vorgestellt. Bernhard |
Re: Komponenteneigenschaften in For-Schleife ändern...
:mrgreen: Danke für die Antwort :mrgreen: :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:09 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 by Thomas Breitkreuz