La Web del Programador: Comunidad de Programadores
 
    Pregunta:  46125 - COLOR DEL TEXTO EN UN TREENODE
Autor:  Sonia Rodriguez
Hola, me gustaria saber si hay forma de cambiar el color del texto en un TreeNode dentro de un TreeView.
Gracias!!

  Respuesta:  Erwin Perez
Debes escribir en el evento OnCustomDrawItem el codigo del dibujado del texto, previamente cambiando el color en la propiedad Canvas.Font y restableciendolo al final.
ejemplo:

procedure TForm.TMyTreeViewCustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var
TheRect: TRect;
SaveColor: TColor;
begin
DefaultDraw:=False;
if DefaultDraw then Exit;
TheRect:=Node.DisplayRect(False);
SaveColor:=MyTreeView.Font.Color;
MyTreeView.Font.Color:=clBlue;
DrawText(TVSaldo.Canvas.Handle, PChar(Node.Text), Length(Node.Text), TheRect, DT_RIGHT);
MyTreeView.Font.Color:=SaveColor;
end;