![]() |
dynamisch auf Componenten zugreifen
Hallo,
möchte um nicht alle Label_1 bis Label_99 einzeln initialisieren zu müssen, dies über eine Schleife machen. Wie kann ich die Objekte Label_1 bis Label_99 dynamisch ansprechen?
Delphi-Quellcode:
[edit=mkinzler]Delphi-Tag eingefügt Mfg, mkinzler[/edit]
for i:=1 to 99
label + '_' + IntToStr(i).Text = 'blabla'; ??? |
Re: dynamisch auf Componenten zugreifen
|
Re: dynamisch auf Componenten zugreifen
Bevor wieder jemand mit FindComponent kommt: pack Dir die Labels in ein Array oder eine TObjectList und arbeite das/die dann ab. Wenn Du eine TObjectList verwendest, denke aber daran, OwnsObjects auf false zu setzen.
[edit] Zu spät :? [/edit] |
Re: dynamisch auf Componenten zugreifen
danke!
jangub |
Re: dynamisch auf Componenten zugreifen
Falls die Labels alle auf der selben Komponente liegen (Form, Panel, etc.) gehts auch so:
Delphi-Quellcode:
var
i: Integer; begin for i := 0 to ComponentCount -1 do begin if Components[i] is TLabel then (components[i] as TLabel).Text := 'blubb'; end; end; |
Re: dynamisch auf Componenten zugreifen
Stehen für den Benutzer wichtige Informationen in den Labels?
Falls ja, dann nimm TEdit mit ReadOnly=True anstelle der Labels. Vorteil für den Benutzer: er kann Texte markieren und kopieren. Es gibt leider so viele ungeschickte Programme, die z.B. Hypherlinks, Seriennummern, usw anzeigen und der arme Benutzer muss alles abschreiben. :wall: Bestes Beispiel ist das Infofenster des Internet Explorer. |
Re: dynamisch auf Componenten zugreifen
Zitat:
|
Re: dynamisch auf Componenten zugreifen
Zitat:
|
Re: dynamisch auf Componenten zugreifen
Ich will nicht die Hand dafür ins Feuer legen, aber m.W.n. prüft as erneut mit is den Typ ab und wirft im Fehlerfall eine Exception. Ein harter Typecast ist daher vermutlich etwas schneller.
|
Re: dynamisch auf Componenten zugreifen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:28 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