답변 감사합니다.
canvas.Brush.Color - 요건 색깔 바꿀때:grid의 바탕을 바꿈...
canvas.Draw - 요건 비트맵그림넣을때 쓰면 돼겠습니다.:grid의 전체를 변경...
위의 답변 감사하고요...
아래것도 부탁합니다...
procedure TStkDFrm.StkGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if StkQTabTPRate.Value>0 then
StkGrid.Columns[3].Font.Color:=clRed
else if StkQTabTPRate.Value<0 then
StkGrid.Columns[3].Font.Color:=clBlue
else
StkGrid.Columns[3].Font.Color:=clBlack;
end;
end.
에서 StkQTabTPrate.Value는 query되는 data의 값입니다.
그값이 >0면 Grid의 Colum(3)을 빨강글씨로...
=0면 Grid의 Colum(3)을 검정글씨로...
<0면 Grid의 Colum(3)을 파랑글씨로 나타내고자 합니다....
위와 같이했더니 글씨의 색이 바뀌기는 하는데...
현재의StkQTabTPrate.Value값이 현재의 Grid의 Colum(3)에 영향을
주는게 아니고 다음 레코드의 display시 Grid의 Colum(3)에 영향을 줍니다.
그러니까 하나씩 밀려서 적용이 되는 셈이죠...
참고로... DrawColumnCell event를 사용했습니다.
답변해 주시면 감사하겠습니다.
제가 DB는 모르지만 언어적으로 해결을 하시려면...
하나씩 기억했다가 사용하면 어떨까요?
즉...
TempValue를 전역변수로 하나 놓구요..
procedure TStkDFrm.StkGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
if TempValue>0 then
StkGrid.Columns[3].Font.Color:=clRed
else if StkQTabTPRate.Value<0 then
StkGrid.Columns[3].Font.Color:=clBlue
else
StkGrid.Columns[3].Font.Color:=clBlack;
TempValue := StkQTabTPRate.Value;
end;
이렇게 하면 안될까요? 흐..
한번 해보세요.. ^^;
영이... wrote:
> 답변 감사합니다.
>
> canvas.Brush.Color - 요건 색깔 바꿀때:grid의 바탕을 바꿈...
> canvas.Draw - 요건 비트맵그림넣을때 쓰면 돼겠습니다.:grid의 전체를 변경...
> 위의 답변 감사하고요...
>
> 아래것도 부탁합니다...
> procedure TStkDFrm.StkGridDrawColumnCell(Sender: TObject;
> const Rect: TRect; DataCol: Integer; Column: TColumn;
> State: TGridDrawState);
> begin
> if StkQTabTPRate.Value>0 then
> StkGrid.Columns[3].Font.Color:=clRed
> else if StkQTabTPRate.Value<0 then
> StkGrid.Columns[3].Font.Color:=clBlue
> else
> StkGrid.Columns[3].Font.Color:=clBlack;
> end;
>
> end.
>
> 에서 StkQTabTPrate.Value는 query되는 data의 값입니다.
> 그값이 >0면 Grid의 Colum(3)을 빨강글씨로...
> =0면 Grid의 Colum(3)을 검정글씨로...
> <0면 Grid의 Colum(3)을 파랑글씨로 나타내고자 합니다....
> 위와 같이했더니 글씨의 색이 바뀌기는 하는데...
> 현재의StkQTabTPrate.Value값이 현재의 Grid의 Colum(3)에 영향을
> 주는게 아니고 다음 레코드의 display시 Grid의 Colum(3)에 영향을 줍니다.
> 그러니까 하나씩 밀려서 적용이 되는 셈이죠...
> 참고로... DrawColumnCell event를 사용했습니다.
> 답변해 주시면 감사하겠습니다.
>
>
>