sexta-feira, 26 de fevereiro de 2010

Grid Zebrada

. sexta-feira, 26 de fevereiro de 2010

1º - Crie o procedimento conforme mostrado a baixo.


procedure GridZebrada(cds: TClientDataSet; Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState);
procedure TTelaPrincipalF.GridZebrada(cds: TClientDataSet;
  Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState);
begin
if odd(cds.RecNo) then
    TDBGrid(Sender).Canvas.Brush.Color := $00B9FFFF
else
    TDbGrid(Sender).Canvas.Brush.Color:= clCream;
    TDbGrid(Sender).Canvas.font.Color:= clBlack;
if gdSelected in State then
with (Sender as TDBGrid).Canvas do
begin
      Brush.Color := $004080FF;
      FillRect(Rect);
      Font.Style := [fsbold]
end;
  TDbGrid(Sender).DefaultDrawDataCell(Rect, Field, State);
end;


2º - Para utilizar este procedimento é preciso programar o mesmo no evento DrawDataCell do grid desejado.

Onde ficará assim:


procedure TTelaPrincipalF.DBGrid1DrawDataCell(Sender: TObject;
const Rect: TRect; Field: TField; State: TGridDrawState);
begin
  GridZebrada(cdsAplicativo, Sender, Rect, Field, State);
end;

0 comentários:

Postar um comentário

Robôs 19