Hola, no debes hacer el select dentro del evento OnDrawColumnCell, lo haces en otro lado y cuando se refresque con tu consulta el DBGrid se va activar dicho evento para todos los registros.
Código Delphi
[-]
procedure TFrmDetalleSolicitudAutorizada.GridDetalleSolicitudAutorizadasDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn;State: TGridDrawState);
begin
if Datos.QryFindSolicitud.FieldbyName('Seleccionado').AsString ='True' then
begin
if (gdFocused in State) then
GridDetalleSolicitudAutorizadas.canvas.brush.color := clBlue
else
GridDetalleSolicitudAutorizadas.Canvas.Font.Color := clRed;
GridDetalleSolicitudAutorizadas.DefaultDrawColumnCell(rect,DataCol,Column,State);
end;
end;
Saluditos