Fórum Grid color. Outra forma #209990
27/01/2004
0
Usei este comando abaixo para colorir as linhas do grid, sempre que
o campo qdvend, de minha tabela, fosse maior que zero, mas não acon
teceu nada. Como fazer?
procedure TfrmVenda.GridDrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if Dm.Estoque.FieldByName(´qdvend´).AsFloat > 0 then begin
Grid.Canvas.Brush.Color:=clRed;
Grid.Canvas.Font.Color:=clBtnText;
Grid.Canvas.FillRect(Rect);
Grid.Canvas.TextOut(Rect.Left+2, Rect.Top+2, Field.Text);
end;
end;
o campo qdvend, de minha tabela, fosse maior que zero, mas não acon
teceu nada. Como fazer?
procedure TfrmVenda.GridDrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
begin
if Dm.Estoque.FieldByName(´qdvend´).AsFloat > 0 then begin
Grid.Canvas.Brush.Color:=clRed;
Grid.Canvas.Font.Color:=clBtnText;
Grid.Canvas.FillRect(Rect);
Grid.Canvas.TextOut(Rect.Left+2, Rect.Top+2, Field.Text);
end;
end;
Paulo
Curtir tópico
+ 0
Responder
Posts
28/01/2004
Fabio.hc
Eu peguei o seu código, troquei pela minha tabela, no meu ex. coloriu a linha inteira de vermelho em todas as linhas que o campo size fosse maior que 10.
Ex:
Pode ser alguma coisa no campo qdvenda, tipo do campo ou no datamodule.estoque, tente remover o campo e adicionar de novo.
Dá uma olhada no datasource do dbgrid, para onde ele aponta.
Faça o if DM.Estoque.FieldByName.... com outro campo, só para testar.
...
Ex:
procedure TForm1.GridDrawDataCell(Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState); begin //if Dm.Estoque.FieldByName(´qdvend´).AsFloat > 0 then begin if Table1.FieldByName(´size´).AsFloat > 10 then begin Grid.Canvas.Brush.Color:=clRed; Grid.Canvas.Font.Color:=clBtnText; Grid.Canvas.FillRect(Rect); Grid.Canvas.TextOut(Rect.Left+2, Rect.Top+2, Field.Text); end; end;
Pode ser alguma coisa no campo qdvenda, tipo do campo ou no datamodule.estoque, tente remover o campo e adicionar de novo.
Dá uma olhada no datasource do dbgrid, para onde ele aponta.
Faça o if DM.Estoque.FieldByName.... com outro campo, só para testar.
...
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)