Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: CustomControl Vererbung und Paint

  Alt 13. Sep 2017, 19:34
Wieso sollte ein nochmaliges Überschreiben nicht funkionieren? Das wäre ja gegen alles, was ich von OOP so kenne. Gegenbeispiel:
Delphi-Quellcode:
type
  TClassA = class
  protected
    procedure Blubb; virtual;
  end;

  TClassB = class(TClassA)
  protected
    procedure Blubb; override;
  end;

  TClassC = class(TClassB)
  protected
    procedure Blubb; override;
  end;

  TClassD = class(TClassC)
  public
    procedure Blubb; override;
  end;

{ TClassA }

procedure TClassA.Blubb;
begin
  ShowMessage('Bubb aus Class A');
end;

{ TClassB }

procedure TClassB.Blubb;
begin
  inherited;
  ShowMessage('Blubb aus Class B');
end;

{ TClassC }

procedure TClassC.Blubb;
begin
  inherited;
  ShowMessage('Blubb aus Class C');
end;

{ TClassD }

procedure TClassD.Blubb;
begin
  inherited;
  ShowMessage('Blubb aus Class D');
end;

procedure TForm5.FormCreate(Sender: TObject);
var
  Dingens: TClassD;
begin
  Dingens := TClassD.Create;
  try
    Dingens.Blubb;
  finally
    Dingens.Free;
  end;
end;
Da kommen alle Messages schön von "oben" nach "unten" durchgeblubbert, hab ich auch nicht anders erwartet.
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
  Mit Zitat antworten Zitat