Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 мая!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Как изменить цвет ячейки TDBGrid в зависимости от текущего значения


У програмиста радилась девочка. А он в свою очередь не задумываясь говорит.
- А где можно сделать апгрейд?

Для изменения цвета некоторых ячеек таблицы TDBGrid необходимо определить реакцию на событие DBGrid1DrawDataCell и проверив необходимые условия, перерисовать ячейку вручную (если в этом есть необходимость).

Все необходимые данные для отрисовки передаются в параметрах процедуры. Отрисовка белых букв на красном фоне если, перерисовывается поле 'First_I', ячейка не в фокусе и значение поля меньше нуля.


 procedure TForm1.DBGrid1DrawDataCell(Sender: TObject;
           const Rect: TRect; Field: TField; State: TGridDrawState);
 begin
   with DBGrid1.Canvas do
     if (Field.FieldName = 'First_I') and (not (gdFocused in State)) and (Field.AsInteger < 0) then
     begin
       Brush.Color := clRed;
       Font.Color := clWhite;
     end;
   DBGrid1.DefaultDrawDataCell(Rect, Field, State);
 end;
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS