DBGrid에서 특정 컬럼에 특정값에만 다른 폰트로 나올수 있는지 궁금합니다.
--------------------------------------
123 : 234 : 345 : 456 ---> 필드명
--------------------------------------
1 : 2 : 3 : 4 ---> 데이타값
--------------------------------------
3 : 2 : 4 : 5 ---> 데이타값
--------------------------------------
4 : 1 : 5 : 6 ---> 데이타값
--------------------------------------
4 : 3 : 5 : 2 ---> 데이타값
--------------------------------------
일때 345 컬럼에 있는 3 란 값의 글자 폰트색상을 Blue 로 하고 4 값는 Red로 표기하고
5란 값은 Black으로 하자면 어떻게 해야 하는지 조언을 해 주셨으면 합니다.
다른 123,234,456 컬럼 은 그냥 Black로 나오면 되구요...
그럼 조언을 기다리면 델 초보 올림니다.
이거는 제가 했던소스입니다... 귀찮나서 그냥... 실력도 없지만...
그냥 참조만 하세요...
글구 검색하시면 유사한 내용이 있을겁니다...
procedure TForm_ZAA0200A.DBG_ZAAT020DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEH;
State: TGridDrawState);
begin
if Query_ZAAT020.Active = False then
System.Exit;
if (Query_ZAAT020.Bof) and (Query_ZAAT020.Eof) then
System.Exit;
if not Query_ZAAT020.Eof then
begin
// 변경된 필드는 다른색상으로...
if (Column.Field.OldValue <> Column.Field.NewValue) then
TDBGridEH(Sender).Canvas.Font.Color := clRed
else if gdSelected in State then
TDBGridEH(Sender).Canvas.Font.Color := clWhite
else
TDBGridEH(Sender).Canvas.Font.Color := clBlack;
end;
TDBGridEH(Sender).DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;