Q&A

  • dbgrid에서 record별로 색상을 줄때...
일정 처리작업을 거친후 그 내용을 dbgrid에 표시합니다...

그 dbgrid의 특정 필드 내용에 따라 레코드 색을 변경하고 싶어요...

어떻하면 됩니까...

그러니까...

dbgrid내 특정필드가 1이면 그 레코드는 파란색으로 2이면 빨강색으로 3이면 노랑색으로... 이런식으로 표현하는 방법이요...

어디서 구현해야 하고 어떻게 해야하는지 고수 여러분의 상세한 답변을 부탁드립니다...



^^

1  COMMENTS
  • Profile
    ^-_-^ 2001.02.23 02:19
    yo`



    DbGrid 의 OnDrowDataCell 이벤트에서 처리 하면 됩니다.



    걍 간단하게 Field.DisplayName 과 Field.Value 로 값을 알아낸다음에

    DbGrid1.Color 에 값을 주면 되겟네요!!



    procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;

    Field: TField; State: TGridDrawState);

    begin

    If Field.DisplayName = 'Species No' Then

    If Field.Value = '9001' Then

    DbGrid1.Color:= clBlue

    Else

    DbGrid1.Coloe:= clWhite;

    end;



    흠냐..허접 예제 였슴돠 ^^;;



    그럼..휘리릭`



    bLue bLood.



    이승근 wrote:

    > 일정 처리작업을 거친후 그 내용을 dbgrid에 표시합니다...

    > 그 dbgrid의 특정 필드 내용에 따라 레코드 색을 변경하고 싶어요...

    > 어떻하면 됩니까...

    > 그러니까...

    > dbgrid내 특정필드가 1이면 그 레코드는 파란색으로 2이면 빨강색으로 3이면 노랑색으로... 이런식으로 표현하는 방법이요...

    > 어디서 구현해야 하고 어떻게 해야하는지 고수 여러분의 상세한 답변을 부탁드립니다...

    >

    > ^^