Hallo DSeven!
Zitat von
DSeven:
Wie kann ich wenn ich ein Interface habe (ITab) es wieder ins urspüngliche Object (TEditTab) casten?
Warum willst Du das machen?
Delphi-Quellcode:
unit TabIntf;
Interface
uses ...benötigte Units
type
ITab =
Interface(IUnknown)
...
Interface-Methoden
end;
type
TEditTab =
class(irgendein passender Vorfahre, ITab)
...
Interface Methoden -> Siehe ITab
end;
var EditTab: TEditTab;
//Nun kannst Du ganz normal mit dem Objekt arbeiten, wie mit jedem
//anderen Delphi Objekt.
implementation
//...Interface Methoden in der Klasse implementiert
procedure TEditTab.Methode1;
begin
//Hier folgt die korrekte Implementation
end;
function TEditTab.Methode2: Rückgabetyp;
begin
//Hier folgt die korrekte Implementation
end;
end.
Das Interface dient nur als Schnittstelle. Die Implementation erfolgt in einer Klasse, die das Interface einbindet. Siehe Quelltext. Damit hast Du auch eine Instanzvariable für das Objekt. Wozu da das Type-Casting?
Delphifan2004