Einzelnen Beitrag anzeigen

Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#1

Published Properties von unbekanntem Typ auslesen

  Alt 23. Okt 2004, 22:11
Guten Abend,

Ich habe hier ein Objekt, das entweder vom Typ A, B oder C ist. Alle drei Typen besitzten eine als published deklarierte Eigenschaft PubStr vom Typ String. Der letzte gemeinsame Ancestor von A, B und C ist TWinControl. Gibt es eine Möglichkeit zu prüfen, ob eine beliebige Komponente eine bestimmte Eigenschaft besitzt und kann man diese Eigenschaft, sofern der Typ bekannt ist, mit nur einem Funktionsaufruf auslesen?

Ein Beispiel wie ich mir das vorstelle:

Delphi-Quellcode:
procedure foo;
var Compo: TComponent;
    CompoList: Tlist;
begin
 CompoList := TList.Create;
 CompoList.Add(frmMain);
 {...}
 Compo := CompoList[0];
 If PropertyExists(Compo, 'Caption') then
  ShowMessage(GetStringProperty(Compo, 'Caption'));
end;
Viele Grüße,
Dani
Dani H.
  Mit Zitat antworten Zitat