terça-feira, 10 de novembro de 2009

Tdbgrid com linhas coloridas

V{amos incrementar o TDBGrid de uma Table usando algumas linhas colo-

ridas para evidenciar algumas características de um ou outro registro,

uma idéia simples seria destacar os clientes especiais...

Abaixo esta um procedimento para ser ligado no OnDrawDataCell ...}

procedure TMDIChild.DBGrid1DrawDataCell(Sender: TObject;

const Rect: TRect;

Field: TField;

State: TGridDrawState);

begin

if Table1.FieldByName('SPECIAL').asBoolean then

begin

DBGrid1.Canvas.Brush.Color := clAqua;

DBGrid1.Canvas.Font.Color := clBtnText;

DBGrid1.Canvas.FillRect(Rect);



DBGrid1.Canvas.TextOut(Rect.Left+2,

Rect.Top+2,

Field.Text);

end;

end;

Na linha :

if Table1.FieldByName('SPECIAL').asBoolean then begin

//vc pode colocar qualquer verificação para identificar um

//determinado registro. Nas linhas seguintes ...

DBGrid1.Canvas.Brush.Color := clAqua;

DBGrid1.Canvas.Font.Color := clBtnText;

{vc determina as características que quer alterar para destacar essa linha, note que vc pode trocar outras características e não somente o que

estou mostrando nesse exemplo, que é apenas "básico" :)...

Em Delphi 2 ou 3 ... ainda não vi no 4 você deve usar o evento:}

OnDrawColumnCell

{O evento OnDrawDataCell tornou-se obsoleto e foi mantido apenas paramanter a compatibilidade com versões anteriores do Delphi.}

Nenhum comentário:

Postar um comentário