음냐 요즘 이상하게 DBGrid 쪽 질문이 많이 들어 오네요..
아래 소스를 보면 아시겠지만
그냥 MoveTo LineTo 함수로 그려 줍니다.. ^^
바라고 계신게 이건지 정확하게 모르겠네요.. ^^
그럼 소스보고 확인해 주세요.. ^^
/////////////////////////////////////////////////////////////////
procedure TForm2.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
tmpRect : TRect;
begin
with TDBGrid(Sender).Canvas do
begin
Brush.Style := bsSolid;
Brush.Color := clWindow;
FillRect(Rect);
tmpRect := Rect;
if (gdFocused in State) or (gdSelected in State) then begin
Brush.Color := clHighlight;
Font.Color := clHighlightText;
end;
if (Column.FieldName = 'Qty') then
begin
if column.Field.AsInteger < 5 then
begin
Pen.Color := clRed;
MoveTo(Rect.left,Rect.bottom);
LineTo(Rect.right,Rect.bottom);
end
end;
아래 소스를 보면 아시겠지만
그냥 MoveTo LineTo 함수로 그려 줍니다.. ^^
바라고 계신게 이건지 정확하게 모르겠네요.. ^^
그럼 소스보고 확인해 주세요.. ^^
/////////////////////////////////////////////////////////////////
procedure TForm2.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
tmpRect : TRect;
begin
with TDBGrid(Sender).Canvas do
begin
Brush.Style := bsSolid;
Brush.Color := clWindow;
FillRect(Rect);
tmpRect := Rect;
if (gdFocused in State) or (gdSelected in State) then begin
Brush.Color := clHighlight;
Font.Color := clHighlightText;
end;
if (Column.FieldName = 'Qty') then
begin
if column.Field.AsInteger < 5 then
begin
Pen.Color := clRed;
MoveTo(Rect.left,Rect.bottom);
LineTo(Rect.right,Rect.bottom);
end
end;
TextOut(Rect.Left+2,Rect.Top+2,Column.Field.AsString);
Brush.Style := bsSolid;
Pen.Color := clGray;
Brush.Color := clWindow;
end;
end;