Programación General > C++ Builder
Poner color a las filas del DBGrid
Britomartis:
Hola kiero poner color a las filas del DBGrid (una fila clara y otra oscura) para no mezclarlas al leer. Cómo lo puedo hacer. Y cómo puedo hacer para que cuadno se pase el cursor por encima de una fila esta cambie de color. Muchas gracias por ayudarme.
juanC2:
void __fastcall TForm1::DBGrid1DrawDataCell(TObject *Sender, const TRect &Rect, TField *Field, TGridDrawState State)
{
if ((Table1->RecNo % 2) == 0)
DBGrid1->Canvas->Brush->Color = clGray;
else
DBGrid1->Canvas->Brush->Color = clWhite;
if(State.Contains(gdSelected))
{ DBGrid1->Canvas->Font->Color = clWhite;
DBGrid1->Canvas->Brush->Color = clNavy;
}
DBGrid1->DefaultDrawDataCell(Rect, Field, State);
}
nicolas2109:
Buenos días:
Soy bastante novato y no logro que funcione el evento.
Sirve, ¿ si uno de los campos de la fila tiene un valor ?
No encuentro que datos hay que pasar a la función.
¿ que variables o parámetros hay que pasar ?.
Saludos
chenech:
No hay que pasar nada a la función, ve a propiedades del grid, busca el evento drawdatacell y copia el código que ha puesto juanC2, pero copia solo el código de la función, lo que está dentro de las { } y si el grid no se llama Grid1, pues lo cambias por el nombre que le hayas puesto.
Un saludo.
nicolas2109:
Correcto Chenech, el evento esta bien. Problema que variables uso para llamarlo-> TRect &Rect, TField *Field, TGridDrawState State
Saludos
Navegación
[#] Página Siguiente
Ir a la versión completa