Цвет столбцов DBGRID
Я пытаюсь изменить цвет ячейки заголовка в определенном столбце компонента DBGRID в Delphi XE6. Раньше я рисовал заголовок столбца, когда сетка сортировалась по этому столбцу.
DBGRID1.Columns[1].Title.Color := clBlue;
Это возможно? Или есть лучший способ как выделить отсортированный столбец?
2 ответа
Попробуйте переопределить процедуру TCustomDBGrid.DrawCellBackground, чтобы включить цвет фона заголовка:
procedure TMyDBGrid.DrawCellBackground(const ARect: TRect; AColor: TColor; AState: TGridDrawState; ACol, ARow: integer);
begin
if (FLastSortedColumnIdx = ACol) and (ACol >= 0) and (ARow = -1) then
AColor := Columns[ACol].Title.Color;
inherited;
end;
FLastSortedColumnIdx - это поле, в котором хранится Column.Index отсортированного столбца.
Должен работать в Delphi XE3.
Ну, если я понимаю ваш вопрос, все, что вам нужно сделать, это изменить DBGrid
DrawingStyle
собственность на
gdsGradient
а затем измените
gradentEndColor
&
gradentStartColor
быть одного цвета..