Cor dbgrid errada ?

02/10/2004

0

tenho um programa que mostra o estoque de quatro filiais porem esta ocorrendo um erro na cor do dbgrid, sempore na coluna mais a esquerda (a de menor indice), a cor desta coluna sai na linha errada, sempre uma linha a mais que as outras, os dados estao corretos.
segue o codigo.

   Estoque1 := Query1.FieldByName(´ESTOQUE1´).AsFloat;
   Estoque2 := Query1.FieldByName(´ESTOQUE2´).AsFloat;
   Estoque3 := Query1.FieldByName(´ESTOQUE3´).AsFloat;
   Estoque4 := Query1.FieldByName(´ESTOQUE4´).AsFloat;
   If (Estoque1 <= 0) then
   Begin
      DBGrid2.Columns[5].Font.Color := clRed;
      DBGrid2.Columns[5].Color := $00DFFFFF;
   End
   Else If (Estoque1 > 0) then
   Begin
      DBGrid2.Columns[5].Font.Color := clBlack;
      DBGrid2.Columns[5].Color := clWhite;
   End;
   If (Estoque2 <= 0) then
   Begin
      DBGrid2.Columns[6].Font.Color := clRed;
      DBGrid2.Columns[6].Color := $00DFFFFF;
   End
   Else If (Estoque2 > 0) then
   Begin
      DBGrid2.Columns[6].Font.Color := clBlack;
      DBGrid2.Columns[6].Color := clWhite;
   End;
   If (Estoque3 <= 0) then
   Begin
      DBGrid2.Columns[7].Font.Color := clRed;
      DBGrid2.Columns[7].Color := $00DFFFFF;
   End
   Else If (Estoque3 > 0) then
   Begin
      DBGrid2.Columns[7].Font.Color := clBlack;
      DBGrid2.Columns[7].Color := clWhite;
   End;
   If (Estoque4 <= 0) then
   Begin
      DBGrid2.Columns[8].Font.Color := clRed;
      DBGrid2.Columns[8].Color := $00DFFFFF;
   End
   Else If (Estoque4 > 0) then
   Begin
      DBGrid2.Columns[8].Font.Color := clBlack;
      DBGrid2.Columns[8].Color := clWhite;
   End;
   If (Estoque1 > 0) and (Estoque2 > 0) and (Estoque3 > 0) and
      (Estoque4 > 0) then
   Begin
      DBGrid2.Columns[2].Color := clWhite;
      DBGrid2.Columns[2].Font.Color := $0000AF00;
   End
   Else If (Estoque1 > 0) or (Estoque2 > 0) or (Estoque3 > 0) or
      (Estoque4 > 0) then
   Begin
      DBGrid2.Columns[2].Color := clWhite;
      DBGrid2.Columns[2].Font.Color := $0000BFFF;
   End
   Else
   Begin
      DBGrid2.Columns[2].Color := clWhite;
      DBGrid2.Columns[2].Font.Color := clRed;
   End;


Eu tive que acrescentar o codigo abaixo para que uma coluna. que eu nao quero que mude a cor, tenha a cor trocada por outra que o usuario nao ira notar para que tudo funcione direito

   If Estoque1 > 0 then
   Begin;
      DBGrid2.Columns[1].Color := clWhite;
      DBGrid2.Columns[1].Font.Color := $00000000;
   End
   Else
      DBGrid2.Columns[1].Font.Color := $00000001;


Alguem sabe o motivo deste BUG? estou usando D7


Edilcimar

Edilcimar

Responder

Posts

08/10/2004

Edilcimar

sobe


Responder

09/10/2004

Edilcimar

Será que é só o meu delphi que tem o erro?


Responder

12/10/2004

Edilcimar

sobe pela última vez


Responder

09/02/2006

Firekiller_am

estou com a mesma duvida alguem sabe como posso seleciona uma coluna ou celua e pintar obrigado..


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

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

Aceitar