Zitat von
Schaedel:
Hallo,
die Idee hatte ich auch schon...
Das Problem ist das TTreeNode keine Font eigenschaft besitzt.
Lediglich das Treeview hat ne Eigenschaft Font... und das bezieht sich ja dann auf das Ganze.
Über Canvas komm ich auch nicht ran... ist das selbe Problem.
Trotzdem Danke
Ps
hab Delphi 5 Enterprise
Das geht...
Hier habe ich mal auf die ganz schnelle etwas probiert:
Delphi-Quellcode:
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var
rTmp: TRect;
begin
inherited;
if Assigned(Node) and (Node.StateIndex = 1) then
begin
rTmp := Node.DisplayRect(True);
Sender.Canvas.MoveTo(rTmp.Left, (rTmp.Top + (rTmp.Bottom - rTmp.Top)) div 2);
Sender.Canvas.LineTo(rTmp.Right, (rTmp.Top + (rTmp.Bottom - rTmp.Top)) div 2);
end;
end;
Setz dir mal einen TreeView auf ein Form und trag ein paar Knoten ein. Einigen gibst du den StateIndex 1. Dann fügst du die oben gezeigten Zeilen ein.
Du kannst die Canvas Eigenschaft des TreeView verwenden.
Da ich jetzt nicht weiss, ob ich den Hilfeartikel hier posten darf, schicke ich ihn dir mal nur als PM. (Ich hoffe das geht für die anderen in Ordnung, denn ich weiss man soll alles hier ins Forum schreiben).
mfg Leonard
P.S. ich sehe gerade, die Berechnung für die Y Werte bei MoveTo und LineTo passen nicht so richtig, aber es musste eben schnell gehen