Einzelnen Beitrag anzeigen

Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Wie Greife ich auf Methode der Vor vor gänger klasse zu

  Alt 19. Okt 2006, 22:06
Ich habe das andauernd

wer mein Speil Balanced kennt.

Da gibt es sehr ähnliche Elemente. D.h ich habe z.b. einen Stein gemacht der hat 1 bewegliches und mehrere Starre Objecte

nun teilen die sich eine sehr Komplexe Datenstruktur.

und diese Struktur mus ich dann drehen können.

Das Prob ist nu wenn ich nun mehrere solche Objecte hintereinander Ableite und das Letze dann drehen mus wäre es cool wenn das die Rot function der Ursprünglich Klasse aufruft und nicht das der Vorgängerklasse da die dann nicht mehr geht.

Ich habe übrigens schon ne Lösung so ist das nicht, aber die ist etwas zu Kompliziert :

Delphi-Quellcode:
type

  a =Class
  published
    procedure d;virtual;
  end;
 
  b =Class(a)
    procedure d;Override;
  end;
 
  C =Class(b)
  procedure d;Override;
  end;
 
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm} 
 
Procedure A.d;
begin
  showmessage('A');
end;
 
Procedure B.d;
begin
  Showmessage('B');
end;
 
 
 
Procedure C.d;
type TExecute = Procedure of Object;
 
var P : TMethod;
    E : TExecute;
begin
  P.Data := Self;
  P.Code := A.MethodAddress('d');
  if Assigned(P.Code) then
  begin
    try
     E := TExecute(P);
     E; //call method
    except
    end;
  end;
 
end;
 
 
procedure TForm1.FormCreate(Sender: TObject);
var aC : C;
begin
  aC := C.Create;
  aC.D;
  halt;
end;
@mkinzler

IN java geht sowas anscheinend Problemlos
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat