Форум веб-мастеров  /  Статьи веб-мастера  /  WHOIS-сервис  /  Услуги веб-мастера  /  RSS 
Разделы сайта




Полезные ссылки

wm-help.net -> Электронная библиотека -> Delphi -> Вопросы и Ответы по Delphi -> Вопрос и Ответ 41

Вопрос и Ответ 41

Вопрос и Ответ 41

Вопросы и Ответы


      41. Как изменить цвет ячейки 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;
            DBGrid1.DefaultDrawDataCell(Rect, Field, State);

          END;

      end;

      ............


...предыдущая страница следующая...
оглавление

[ Вверх ]

Rambler's Top100

Другие наши проекты:
бодибилдинг | Строим Домик | RU-домены за 170 рублей |
"Вопрос и Ответ 41"
Copyright © "В помощь Веб-Мастеру" (Alexander D. Belyaev) 2005-2008.
При перепечатке любого материала видимая ссылка на источник "В помощь Веб-Мастеру" и все имена, ссылки авторов обязательны!
Время генерации страницы: 0.053