Einzelnen Beitrag anzeigen

oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#1

Propertys einer Componente für eine Klasse mittels RTTI

  Alt 26. Mär 2009, 16:49
Hi,

kleines Problem. Ich kann die Propertys meiner Komponente mittels RTTI-Funktion GetPropList ermitteln. Dabei übergebe ich die Instanz meines Objectes sowie eine PropList und bekomme alle published Propertys zurückgeliefert.

Jetzt möchte ich aber nur die Propertys haben, die in einer bestimmten Basisklasse enthalten sind. Hier mal als Beispiel:
Delphi-Quellcode:
  TCustomClass = class(TComponent)
  published
    property Prop1;
  end;

  TBaseClass = class(TCustomClass)
  published
    property Prop2;
  end;

  TExpertClass = class(TBaseClass)
  published
    property Prop3;
  end;

.....

var MyClass : TExpertClass;
.....

  MyClass := TExpertClass.Create(nil);

  // alle Propertys für MyClass, die in TCustomClass enthalten sind auflisten
  ??????????
Also an der Stelle nur Prop1.

Einer ne Idee? Würd mich sehr freuen.

Bei GetPropInfo kann eine Klassentyp übergeben werden. Was das dann bringt ist mir noch nicht so richtig klar, leider geht das nicht mit GetPropList.
Ich hab auch irgentwie das Gefühl, das ich über GetTypeInfos da ran komme. Einen richtigen Plan hab ich aber nicht.

Schon mal Dank für eure Hilfe,

Gruß oki
42
  Mit Zitat antworten Zitat