Ver Mensaje Individual
  #1  
Antiguo 07-11-2020
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Efectos en un TVirtualStringTree

Tengo un TVirtualStringTree y quisiera que una línea en concreto (en este caso al que lleva los totales) resaltara. De momento sólo he conseguido poner en negrita el texto pero me gsutaría cambiarle el fondo, por ejemplo en amarillo. Estoy usando este código en el evento OnPaintText:
Código:
void __fastcall TfDatos::DiariosPaintText(TBaseVirtualTree *Sender, const TCanvas *TargetCanvas, PVirtualNode Node, TColumnIndex Column, TVSTTextType TextType)
{
     TargetCanvas->Brush->Color = ((PTreeDatos)Sender->GetNodeData(Node))->Concepto.Pos("TOTAL") != 0 ? clYellow : clWhite;
     TargetCanvas->Font->Color  = clBlack;
     TargetCanvas->Font->Style  = ((PTreeDatos)Sender->GetNodeData(Node))->Concepto.Pos("TOTAL") != 0 ? TFontStyles() << fsBold : TFontStyles() >> fsBold;
}
pero sólo consigo esto.

¿Qué me falta oen qué evento he de ponerlo? He probado en todos los que sugiere la ayuda (OnBeforePaint, OnBeforeItemPaint, OnBeforeItemErase, OnAfterItemErase, OnBeforeCellPaint, OnPaintText y OnAfterCellPaint) pero o me da error o no hace el efecto que busco.
Responder Con Cita