Array
(
)

dbgrid - registros com cores diferentes

Rafael Santana
   - 12 mar 2006

pessoal tô usando um dbgrid e preciso deixar uma linha vermelha quando o cliente estiver com sua situação cancelada e linhas azuis quando a situação for normal...


como faço para colorir as linhas do dbgrid?


Adriano Santos
   - 12 mar 2006


Citação:
pessoal tô usando um dbgrid e preciso deixar uma linha vermelha quando o cliente estiver com sua situação cancelada e linhas azuis quando a situação for normal...


como faço para colorir as linhas do dbgrid?



#Código


procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Table1.FieldByName(´CONTINENT´).AsString = ´South America´ then
begin
DbGrid1.Canvas.Brush.Color := clBlue;
DbGrid1.Canvas.Font.Color := clWhite;
end
else if Table1.FieldByName(´CONTINENT´).AsString = ´North America´ then
begin
DbGrid1.Canvas.Brush.Color := clRed;
DbGrid1.Canvas.Font.Color := clWhite;
end;
DbGrid1.Canvas.FillRect(Rect);
DbGrid1.DefaultDrawDataCell(rect,Column.Field,State);
end;



Aroldo Zanela
   - 12 mar 2006

Colega,

A forma de menor esforço que conheço, é utilizando a RxLib ou Jedi VCL, que possuem um componente com manipulador de evento específico para isso.