Cambio de color de las filas de un DBGrid.

Tengo un DBGrid asociado a un DataSource, entonces, me gustaría saber si se puede hacer lo siguiente:
Al hacer un doble click en un registro, que la fila que ocupa el registro cambie de color.
Si no se puede hacer con un DBGrid, ¿con qué componente puede hacerse?

2 respuestas

Respuesta
1
Lamento la tardanza de mi respuesta, espero todavía te sirva.
Bueno yo tuve el mismo problema y encontré que se puede hacer teniendo una bandera en la tabla a la que haces referencia con tu dbgrid.
Por ejemplo yo tengo un botón que cambia el estado de mi "bandera" a ES o N. Tú podrías hacerlo con el Evento del DBGrid "DblClick".
La función que cambia el color es esta:
procedure TFormMedico.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if IBDataSet1.FieldByName('Nombre_Bandera').Value = 'S' then
begin
DBGrid1.Canvas.Font.Color:=clWhite;
DBGrid1.Canvas.Brush.Color:=clRed;
end;
DBGrid1.DefaultDrawColumnCell (Rect, DataCol, Column, State);
end;
Yo utilicé Interbase ... pero podría hacerse con cualquier componente de acceso a bases de datos.
Juégate con los comandos Color, esos le dan el color al fondo de cada línea del grid y el color del texto; así podrás obtener el color que desees.
Cualquier pregunta no dudes en escribir.
Nuevamente lamento la tardanza.
Respuesta
Ando oxidado en ese aspecto de
Las filas, que preguntas.
Yo creo que si se puede
Pues,. Se tendría que hacer primero un código que detecte cuando se hace doble click. En un registro. Como cuando queremos quitar o agregar, un texto a un string list.
---
Si esto no te ayuda puedes buscar en http://www.planetsourcecode.com usa el buscador de arriba y elije delphi.
o en www.clubdelphi.com

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas