Прошу прощения, что опять поднимаю эту тему. Я тут видел эти темы .. но не могу понять где я мог ошибиться в своем коде. Подскажите плиз.
Проблема в том, что мне нужно изменить цвет текста в одной колонке. Как это сделать не знаю …
Я делаю выбор данных через IB-7
procedure TMain_Form.suiDBGridDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
const
clGreenMy = TColor($24EB07);
clRedMy = TColor($7370FC);
begin
////////////////////////////////////////////// ошибок не выдает но и не изменяет
if Column.FieldName = 'Gorod_Rajon' Then
if Column.Field.Dataset.FieldbyName('Gorod_Rajon').AsString = ' Gorod_Rajon' ' then
begin
suiDBGrid.Canvas.Font.Color:= clgreen;
suiDBGrid.Canvas.Brush.Color:= clRed;
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;