Ver Mensaje Individual
  #15  
Antiguo 01-07-2016
Avatar de rretamar
[rretamar] rretamar is offline
Miembro Premium
 
Registrado: ago 2006
Ubicación: San Francisco, Córdoba, Argentina
Posts: 1.168
Reputación: 20
rretamar Va camino a la famarretamar Va camino a la fama
En LAZARUS lo hago de esta forma:

Código Delphi [-]
procedure TFAbm_Estudios.DBGrid1PrepareCanvas(sender: TObject; DataCol: Integer;  Column: TColumn; AState: TGridDrawState);   // Colorización de celdas
Var
  Finalizado, Reservado, Informado, Transcripto, Revisado: Boolean;
begin
  With Sender As TDBGrid Do
    Begin
       Finalizado := DataSource.DataSet.FieldByName('TECNICO').AsInteger > 0;
       Reservado := (DataSource.DataSet.FieldByName('MEDICO').AsInteger > 0) And DataSource.DataSet.FieldByName('FECHA_INFORME').IsNull;
       Informado := (DataSource.DataSet.FieldByName('MEDICO').AsInteger > 0) And (Not DataSource.DataSet.FieldByName('FECHA_INFORME').IsNull);
       Transcripto := DataSource.DataSet.FieldByName('TRANSCRIPCION').AsInteger > 0;
       Revisado := DataSource.DataSet.FieldByName('REVISION').AsInteger > 0;
       //
       If Revisado Then
         Begin
           Canvas.Brush.Color := Panel8.Color; // Estudio terminado de corregir y listo para entregar (celeste)
           Canvas.Font.Color := ClBlack;
           Exit;
         end;
       If Transcripto Then
         Begin
           Canvas.Brush.Color := Panel7.Color; // Transcripción terminada (verde)
           Canvas.Font.Color := ClBlack;
           Exit;
         end;
       If Informado Then
         Begin
           Canvas.Brush.Color := Panel6.Color; // Estudio terminado de informar (celeste)
           Canvas.Font.Color := ClBlack;
           Exit;
         end;
       If Reservado Then
         Begin
           Canvas.Brush.Color := Panel9.Color; // Estudio reservado por un médico para informar
           Canvas.Font.Color := ClBlack;
           Exit;
         end;
       If Finalizado Then
         Begin
           Canvas.Brush.Color := Panel5.Color; // Estudio finalizado (gris)
           Canvas.Font.Color := ClBlack;
           Exit;
         end;
    End;
end;
__________________
Lazarus Codetyphon : Desarrollo de aplicaciones Object Pascal, libre y multiplataforma.
Responder Con Cita