Вопрос заключатся в следующем!
Я использую в своем проекте DBGridEh и мне нужно
Одни столбцы закрасить
В другом изменить цвет шрифта.
Я делаю так
Код:
procedure TMain_Form.suiDBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
const
clGreenMy = TColor($24EB07);
clRedMy = TColor($7370FC);
begin
If Main_Vid_Type = 3 Then Exit;
//////////////////////////////////////////////
with suiDBGrid.Canvas do begin
if (Column.Field.Dataset.FieldbyName('Gorod_rajon').AsString <> '') then begin
Brush.Color:=clGreenMy;
Font.Color:=clRedMy;
FillRect(Rect);
TextOut(Rect.Right-2- TextWidth(Column.Field.Text),
Rect.Top+2,Column.Field.Text)
end;
If Column.FieldName = 'KAN1' Then If Column.Field.Dataset.FieldbyName('KAN1').AsInteger <> 0 Then Begin suiDBGrid.Canvas.Brush.Color := clRedMy; suiDBGrid.Canvas.Font.Color := clRedMy; End Else Begin suiDBGrid.Canvas.Brush.Color := clGreenMy; suiDBGrid.Canvas.Font.Color := clGreenMy; End;
If Column.FieldName = 'BOOT1' Then If Column.Field.Dataset.FieldbyName('BOOT1').AsInteger <> 0 Then Begin suiDBGrid.Canvas.Brush.Color := clRedMy; suiDBGrid.Canvas.Font.Color := clRedMy; End Else Begin suiDBGrid.Canvas.Brush.Color := clGreenMy; suiDBGrid.Canvas.Font.Color := clGreenMy; End;
/////////////////////////////////////////////////////////////
suidbgrid.DefaultDrawColumnCell(rect,DataCol,Column,State);
End;
end;
часть где я просто закрашиваю столбцы работает а вот с изменением шрифта и цвета не работает где я тут допустил ошибку??
Помогите !!!