Autor Beitrag
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Fr 04.09.09 11:44 
Hallo,

ja der Titel sagt eigentlich eh schon alles. Ich will überprüfen ob eine Komponente eine bestimmte Eigenschaft hat. In meinem speziellen Fall ob bei der Komponente die Eigenschaft Caption vorhanden ist. Ich hab mir zuerst gedacht, ich überprüf einfach ob die Komponente ein Nachfahre der Klasse ist, bei der das implementiert wurde. Jedoch haben die alle keinen gemeinsamen vorfahren der die eigenschaft als erstes implementiert hat.

lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 04.09.09 11:47 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
uses TypInfo;

function CompHasCaption(AClass : TObject; out sResult: string): Boolean;
const sProp = 'Caption';
var
  MyPropInfo: PPropInfo;
begin
  sResult := '';
  MyPropInfo := GetPropInfo(AClass.ClassInfo, sProp);
  Result := Assigned(MyPropInfo);
  if Result then
    sResult := GetPropValue(AClass, sProp);
end;
elundril Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Fr 04.09.09 11:53 
Wow, das ging fix und funktioniert prächtigst!!! Dank dir vielmals!!

lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 04.09.09 12:00 
Das hatte ich in der DP schon einmal geschrieben und musste daher nur kopieren ;)