Fórum DBGrid zebrado #221605

23/03/2004

0

Olá amigos,

coloque a seguinte função do no DBGrid:

procedure TFrmMostraCliente.RxDBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer;
Column: TColumn; State: TGridDrawState);
begin
If odd(DataModule1.ADOQryClientes.RecNo) then begin
RxDBGrid1.Canvas.Font.Color := clBlack;
RxDBGrid1.Canvas.Brush.Color := clAqua;
end
else begin
RxDBGrid1.Canvas.Font.Color := clBlack;
RxDBGrid1.Canvas.Brush.Color := clWhite;
end;
RxDBGrid1.Canvas.FillRect(Rect);
RxDBGrid1.Canvas.TextOut(Rect.Left+2,Rect.Top,Column.Field.AsString);
end;

Ficou zebrado, mas na hora de usar as setas para movimentar o grid, no campo atual não fica como no modo original, fonte branca, e fundo azul.

Como faço para a rotina funcionar no modo original, com o grid zebrado.

Atenciosamente,

Silvio Guedes.


Silviogs

Silviogs

Responder

Posts

23/03/2004

Spider

if not (gdselected in state) then
begin
If odd(DataModule1.ADOQryClientes.RecNo) then
begin
RxDBGrid1.Canvas.Font.Color := clBlack;
RxDBGrid1.Canvas.Brush.Color := clAqua;
end
else
begin
RxDBGrid1.Canvas.Font.Color := clBlack;
RxDBGrid1.Canvas.Brush.Color := clWhite;
end;
else
begin
RxDBGrid1.Canvas.Font.Color := clWhite;
RxDBGrid1.Canvas.Brush.Color := clBlack;
end;
RxDBGrid1.Canvas.FillRect(Rect);
RxDBGrid1.Canvas.TextOut(Rect.Left+2,Rect.Top,Column.Field.AsString);


Responder

Gostei + 0

23/03/2004

Silviogs

funcionou perfeito.

Valeu!!!!!

Muito Obrigado.


Silvio Guedes.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar