Hola Federico:A ver si te sirve esta función, la he probado en BCB1, 3 y 5.
//---
void PintarFondoLinea(TRichEdit *RichEdit, int Linea, TColor Color)
{
// Seleccionamos la linea
int iStart = RichEdit->Perform(EM_LINEINDEX, Linea-1, 0);
int iEnd = RichEdit->Perform(EM_LINEINDEX, Linea, 0);
RichEdit->Perform(EM_SETSEL, iStart, iEnd);
// Pintamos el fondo de la selección del color especificado
::CHARFORMAT2 cf;
cf.cbSize = sizeof(cf);
cf.dwMask = CFM_BACKCOLOR;
cf.crBackColor = ColorToRGB(Color);
RichEdit->Perform(EM_SETCHARFORMAT, SCF_SELECTION, (int)&cf);
// Quitamos la selección
RichEdit->Perform(EM_SETSEL, 0,0);
}
//---
y la usamos por ejemplo así:
// Pintamos la linea 4 del RichEdit1 de amarillo
PintarFondoLinea(RichEdit1, 4, clYellow);
---
Saludos.
_Leo
PD: Esto solo funciona en la versión 2 del richedit o superior, por lo que en las primeras versiones de Windows95 sin actualizar podría no funcionar.