Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Zugriff einer eigenen Klasse auf ein MemoFeld ??

  Alt 5. Jan 2007, 12:50
Hallo Alex,

Zitat von -lx-:
... dass mit der Fehlersuche hat sich in dem Zusammenhang erledigt. Daher wäre eine "richtige" und "sauberer" Art auf eine höhere Klasse zuzugreifen angebrachter.
Oft ist es genau andersrum - auf einen professionelle Ansatz kommt die Replik "zu aufwändig".

Der abstrakte Datentyp BinaryTree kann mit oder ohne Container-Klasse implementiert werden. Ohne die Fähigkeit zur Selbstdarstellung würde ich eine Single Class Implementierung wählen - hier nur angedeutet:

Delphi-Quellcode:
type
  TBinaryTreeNode = class
    FValue: Integer;
    FParent: TBinaryTreeNode;
    FLeft: TBinaryTreeNode;
    FRight: TBinaryTreeNode;
    // ...
  end;
Wenn der Baum sich selbstdarstellen können soll, dann würde ich zusätzlich eine visuelle Container-Klasse implementieren:

Delphi-Quellcode:
type
  TBinaryTree = class(TGraphicControl)
    FRoot: TTBinaryTreeNode;
    procedure Draw;
    // ...
  end;
Die Basisklasse kannst du nach deinen Bedürfnissen wählen. Der Vorteil dieser Vorgehensweise ist, dass die Informationen zur Selbstdarstellung nicht redundant bei den Knoten liegen - wo sie auch gar nichts zu suchen haben.

Machst du TBinaryTree zu einem Nachfahren von TGraphicControl, dann brauchst du keine PaintBox, sondern hast ein eigenes canvas property.

Zitat von -lx-:
Woher weist du dass ich "Alex" heiße ?
In Hessen kennt doch jeder jeden - wusstest du das nicht?

Freundliche Grüße
  Mit Zitat antworten Zitat