SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: huevozen en Miércoles 30 de Agosto de 2006, 00:19

Título: Cómo Pintar Una Celda Del Drawgrid?
Publicado por: huevozen en Miércoles 30 de Agosto de 2006, 00:19
Bueno mi caso es practicamente lo mismo que se trató en una discusión anterior, de pintar una celda de un String Grid, pero mi caso es con un DrawGrid, quisiera saber si se puede pintar solo una celda de este control. Gracias x su tiempo...
Título: Re: Cómo Pintar Una Celda Del Drawgrid?
Publicado por: Linspire en Miércoles 30 de Agosto de 2006, 02:43
Bueno, pues creo que este código puede servir para guiarte, lo que hace es que cambia el color de una celda cuando la editas.

Lo que hacemos es usar la propiedad "Controls[]" que nos da la lista de punteros a los controles que contiene el StringGrid, en este caso el Edit.

Para probar esto puedes poner el siguiente código en el evento OnDrawCell del StringGrid:

Código:   
TStringGrid* grid = static_cast<TStringGrid*>(Sender);
if (grid->ControlCount)
{
    TEdit *edit = static_cast<TEdit*>(grid->Controls[0]);
    edit->Color = clYellow;
    edit->Font->Color = clRed;
}

Saludos!.. :hola:  :lightsabre:  :devil:  :comp:
Título: Re: Cómo Pintar Una Celda Del Drawgrid?
Publicado por: huevozen en Jueves 31 de Agosto de 2006, 15:58
Bueno lo que quería era pintar la celda de un DrawGrid, no de un StringGrid, bueno en todo caso quiero que el texto de la celda se cambie de color, o se haga negrita, cualquier cosa que la distinga de las demás celdas...