Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
Delphi 12 Athens
|
AW: Schon wieder: Warum Interfaces
20. Okt 2016, 15:43
Ich mache das normalerweise so:
Delphi-Quellcode:
type
IIntf1 = interface
['{AA7958DE-7A80-4F11-A5D5-A70BB3D51320}']
procedure SomeMethod1;
procedure SomeMethod2;
end;
IIntf2 = interface
['{A25606F4-B121-4FA5-BF07-B40C7784FFB7}']
procedure SomeMethod3;
end;
TTestClass = class(TInterfacedObject, IIntf1, IIntf2)
public
//IIntf1
procedure SomeMethod1;
procedure SomeMethod2;
//IIntf2
procedure SomeMethod3;
end;
{ TTestClass }
procedure TTestClass.SomeMethod1;
begin
ShowMessage('SomeMethod1');
end;
procedure TTestClass.SomeMethod2;
begin
ShowMessage('SomeMethod2');
end;
procedure TTestClass.SomeMethod3;
begin
ShowMessage('SomeMethod3');
end;
procedure TFormTest.Button1Click(Sender: TObject);
var
Test: IIntf1;
Intf2: IIntf2;
begin
Test := TTestClass.Create;
Test.SomeMethod1;
if Supports(Test, IIntf2, Intf2) then
Intf2.SomeMethod3;
end;
Detlef "Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
|