Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Verschieden Typen in einer "Liste" bearbeiten (https://www.delphipraxis.net/62444-verschieden-typen-einer-liste-bearbeiten.html)

yogie 4. Feb 2006 17:14


Verschieden Typen in einer "Liste" bearbeiten
 
Hallo zusammen,

gibt es eigentlich möglich statt z.B.

if aComponent IS TButton then ..
...
if aComponent IS TLabel then ..
...
if aComponent IS TEdit then ..
...

eine Art "Liste" mit verscheidenen Typen zu erstellen, die
dann in einer Schleife durchlaufen wird ?

Bernhard Geyer 4. Feb 2006 17:17

Re: Verschieden Typen in einer "Liste" bearbeiten
 
Was willst Du denn genau in der Schleife machen?

Kannst Du statt mit TButton z.B. mit der Abfrage auf einer Basiskomponente arbeiten.
Evtl. geht es auch mit den Möglichkeiten der RTTI aus den Code zu zusammenzufassen.

SirThornberry 4. Feb 2006 17:17

Re: Verschieden Typen in einer "Liste" bearbeiten
 
wenn alle die gleiche Basisklasse haben kannst du einfach auf die größte gemeinsame Basisklasse casten und diese Methoden aufrufen.

alzaimar 4. Feb 2006 18:20

Re: Verschieden Typen in einer "Liste" bearbeiten
 
In der Unit Contnrs gibt es eine TClassList, da packst Du einfach die Klassen rein und iterierst. Auf eine gemeinsame Basisklasse zu prüfen ist aber wesentlich eleganter (sofern möglich).

yogie 5. Feb 2006 06:20

Re: Verschieden Typen in einer "Liste" bearbeiten
 
... danke erstmal.

@Bernhard Geyer
Ich möchte in einer Anwendung alle Controls durchgehen und ihre
Captions und Hints in eine Ini-Datei schreiben. Natürlich auch
Menüs usw. Das ganze soll dann die Basis für eine Internationali-
sierung ergeben. Für normale Controls habe ich das schon fertig.
Jetzt baue ich auf Widestrings und wollte bei der Gelegenheit
etwas eleganter programmieren


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz