![]() |
Panel Indizes mit For-Schleife durchgehen
Hallo,
ich habe gerade in meinem neuen Projekt 10x10 Panels erstellt (also 100 :D) Jetzt will ich deren Text durchnummerieren (z.B. 1 bis 100). Dabei will ich natürlich nicht alle einzeln ändern sondern wollte mir mit einer For-Schleife helfen. Meine Panels heißen Panel1, Panel2, Panel3 ... Panel100. Meine Idee: For i:=1 To 100 Do Panel(i).Text:=i; Leider funktioniert Panel(i) nicht und mir fällt keine andere Möglichkeit ein. Es wäre super, wenn jemand eine Lösung für das Problem hätte. Danke schon einmal im Voraus :D Grüße Basti |
Re: Panel Indizes mit For-Schleife durchgehen
|
Re: Panel Indizes mit For-Schleife durchgehen
Delphi-Quellcode:
For i:=1 To 100 Do (FindComponent('Panel'+IntToStr(i)) as Tpanel).Text:=i;
|
Re: Panel Indizes mit For-Schleife durchgehen
FindComponent in Schleifen ist aber nicht so prickelnd, da es intern selbst eine Schleife verwendet. Besser wäre es, sich ein Array of TPanel oder eine TObjectList(OwnsObjects dabei auf false) zu erstellen und die Panels darin zu verwalten.
|
Re: Panel Indizes mit For-Schleife durchgehen
For i:=1 To 100 Do (FindComponent('Panel'+IntToStr(i)) as Tpanel).Caption:=IntTOStr(i);
Vielen Dank es hat geklappt. Es waren nur noch zwei weitere Fehler: Panel.Text gibt es nicht es muss Panel.Caption heißen Caption ist ja ein String also muss man am Ende IntToStr(i) nehmen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:40 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