Hola de nuevo.
Tal como te dije anteriormente, para que se 'pinte' sólo una fila, tenés que poner a
True la propiedad
dgRowSelect, lo que hace que la fila seleccionada esté
coloreada.
Ahora para cambiar el color de la selección colocá este código en el evento DrawColumnCell del DBGrid:
Código:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if gdSelected in State then
with DBGrid1 do
begin
Canvas.brush.Color:= clRed; // Fondo rojo ...
Canvas.Font.Color:= clWhite; // Texto blanco...
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
Saludos.