wwDBGrid (InfoPower) Colorir Algumas Linhas
Olá, preciso colorir algumas linhas do Grid do InfoPower, de acordo com algumas condições da minha Tabela.
Caso souber de forma manual, isto é, que eu tenha que ver a condição antes e deixar a linha com outra cor também pode ser.
Agradeço quem souber.
Fabi :P
Caso souber de forma manual, isto é, que eu tenha que ver a condição antes e deixar a linha com outra cor também pode ser.
Agradeço quem souber.
Fabi :P
Fabiana
Curtidas 0
Respostas
Cabreu.jr
05/06/2003
Fabi,
é só colocar as sua condições de teste no evento onCalcCellColor
da grid. Qualquer dúvida me mande um e-mailo que eu explico melhor.
Claudio.
é só colocar as sua condições de teste no evento onCalcCellColor
da grid. Qualquer dúvida me mande um e-mailo que eu explico melhor.
Claudio.
GOSTEI 0
Nando
05/06/2003
Oi Fabi,
o exemplo abaixo é para alterar a cor da fonte para a linha onde um determinado campo ( no caso ´CONC´) contiver um determinado valor.
Para alterar a cor da células mude a propriedade ´Font´ para ´Brush´;
Espero que seja isto que precisa!
procedure TfrmNFS.grdINNFDrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
var
F_holdcolor : TColor;
F_newcolor : TColor;
begin
inherited;
F_holdColor := grdINNF.Canvas.Font.Color;
if qryINNF.FieldByName(´CONC´).AsString = ´A´ then
F_newcolor := $00804000
else if qryINNF.FieldByName(´CONC´).AsString = ´F´ then
F_newcolor := clred
else
F_newcolor := clMaroon;
grdINNF.Canvas.Font.Color := F_newcolor;
grdINNF.DefaultDrawDataCell(Rect, Field, State);
grdINNF.Canvas.Font.Color := F_holdcolor;
end;
o exemplo abaixo é para alterar a cor da fonte para a linha onde um determinado campo ( no caso ´CONC´) contiver um determinado valor.
Para alterar a cor da células mude a propriedade ´Font´ para ´Brush´;
Espero que seja isto que precisa!
procedure TfrmNFS.grdINNFDrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
var
F_holdcolor : TColor;
F_newcolor : TColor;
begin
inherited;
F_holdColor := grdINNF.Canvas.Font.Color;
if qryINNF.FieldByName(´CONC´).AsString = ´A´ then
F_newcolor := $00804000
else if qryINNF.FieldByName(´CONC´).AsString = ´F´ then
F_newcolor := clred
else
F_newcolor := clMaroon;
grdINNF.Canvas.Font.Color := F_newcolor;
grdINNF.DefaultDrawDataCell(Rect, Field, State);
grdINNF.Canvas.Font.Color := F_holdcolor;
end;
GOSTEI 0