Mostrar a linha do grid em vermelho se for 0
Bom,
estou fazendo dessa maneira para que quando nessa coluna for 0 mostrar a linha em vermelho, mas não está funcinando, alguém poderia me ajudar?
estou fazendo dessa maneira para que quando nessa coluna for 0 mostrar a linha em vermelho, mas não está funcinando, alguém poderia me ajudar?
if dbglan.Fields[5].AsString = ´0´ Then Begin dbglan.Canvas.Font.Color:= clred End Else Begin dbglan.Canvas.Font.Color:= clBlack ; End;
Robinhocne
Curtidas 0
Respostas
Devmedia
04/01/2008
Amigo robinhocne.
Tudo bom cara?
Tente isto:
Se não funcionar. Dá um grito aqui de volta.
Um abraço.
Att.
Tudo bom cara?
Tente isto:
If Column.Field = DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´) then Begin If DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´).AsString <= ´0´ then Begin DBGridProdutos.Canvas.Font.Style := DBGridProdutos.Canvas.Font.Style + [fsbold]; DBGridProdutos.Canvas.Font.Color := clRed; DBGridProdutos.DefaultDrawDataCell(rect,Column.Field,state); end; end;
Se não funcionar. Dá um grito aqui de volta.
Um abraço.
Att.
GOSTEI 0
Picyka
04/01/2008
Amigo robinhocne.
Tudo bom cara?
Tente isto:
Se não funcionar. Dá um grito aqui de volta.
Um abraço.
Att.
If Column.Field = DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´) then Begin If DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´).AsString <= ´0´ then Begin DBGridProdutos.Canvas.Font.Style := DBGridProdutos.Canvas.Font.Style + [fsbold]; DBGridProdutos.Canvas.Font.Color := clRed; DBGridProdutos.DefaultDrawDataCell(rect,Column.Field,state); end; end;
no DrawColumnCell do dbgrid
tente assim que eu tenhu certeza q funciona
If dmc.ClientDataSetLocReferenciaQTDE_ESTOQUE.AsInteger <= DM.ClientDataSetReferenciaEST_MINIMO.AsInteger then
begin
Dbgrid1.Canvas.Font.Color:= clRed; // coloque aqui a cor desejada
Dbgrid1.DefaultDrawDataCell(Rect, DBGrid1.Fields[Datacol], State);
GOSTEI 0
Robinhocne
04/01/2008
Amigos eu não uso clientdataset para a conexão do banco de dados, uso apenas tres componentes da InterBase
IbTransaction
IbDataBase
IbQuery
? :shock:
IbTransaction
IbDataBase
IbQuery
? :shock:
GOSTEI 0
Edilcimar
04/01/2008
veja este tópico que eu coloquei, talvez te ajude
http://forum.devmedia.com.br/viewtopic.php?t=52587&highlight=cor+dbgrid
http://forum.devmedia.com.br/viewtopic.php?t=52587&highlight=cor+dbgrid
GOSTEI 0
Devmedia
04/01/2008
Amigo robinhocne.
Tudo bom cara?
Olha, na minha resposta anterior esqueci de mencionar para voce implementar este codigo no seu DrawCollumnCell do DBGrid. No Codigo que lhe passei, segue:
Voce somente tem que alterar [color=blue:57088c0b5a]DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´)[/color:57088c0b5a] referenciamento a sua forma de conexão com a tabela e o campo, normalmente como voce utiliza o IBQuery.
Ahh e o nome do DBGrid tambem.
Teste, que certeza de funcionar.
Qualquer coisa, retorna um grito aqui.
Um abraço.
Att.
Tudo bom cara?
Olha, na minha resposta anterior esqueci de mencionar para voce implementar este codigo no seu DrawCollumnCell do DBGrid. No Codigo que lhe passei, segue:
If Column.Field = DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´) then Begin If DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´).AsString <= ´0´ then Begin DBGridProdutos.Canvas.Font.Style := DBGridProdutos.Canvas.Font.Style + [fsbold]; DBGridProdutos.Canvas.Font.Color := clRed; DBGridProdutos.DefaultDrawDataCell(rect,Column.Field,state); end; end;
Voce somente tem que alterar [color=blue:57088c0b5a]DM.ClientDataSetGrid.FieldByName(´EM_ESTOQUE´)[/color:57088c0b5a] referenciamento a sua forma de conexão com a tabela e o campo, normalmente como voce utiliza o IBQuery.
Ahh e o nome do DBGrid tambem.
Teste, que certeza de funcionar.
Qualquer coisa, retorna um grito aqui.
Um abraço.
Att.
GOSTEI 0