Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Eigene VCL-Komponenten, die ein Interface implementieren

  Alt 17. Nov 2009, 17:00
Hallo Matthias,

alle von TComponent abgeleiteten Komponenten implementieren (in TComponent) das Interface IInterface - also auch deine speziellen Controls, ohne dass du die entsprechenden Funktionen selbst programmieren musst. Zusätzlich ist in TComponent die Referenzzählung ausgeschaltet, falls du nicht gerade mit COM hantierst und Controls ableitest, die das Interface IVCLComObject implementieren.

Die einfache Abfrage lautet daher

Delphi-Quellcode:
var
  intf: ILoadAndSaveToXml;
begin
  if Supports(Component, ILoadAndSaveToXml, intf) then
    intf.SaveToXML (...);
end;
Für alle nicht von TComponent abgeleiteten Klassen gelten natürlich die von Bernhard gemachten Aussagen bezüglich der gemischten Verwendung von Interface- und Objektreferenzen.

Gruß Hawkeye
  Mit Zitat antworten Zitat