Как изменить цвет границы выбранной строки и цвет фона включенного стиля DBGrid в delphi xe2?
Я использовал стиль по умолчанию "Аметист Камри" в приложении. И цвет выбранной строки моей DBgrid меняется в соответствии со стилем. Но я хочу изменить цвет границы выбранной строки и цвет фона. Я меняю стиль шрифта, используя ответ на следующий вопрос.
Теперь я хочу изменить цвет. Как это сделать?
1 ответ
Сначала необходимо унаследовать TDBGrid от калибровки Vcl.DBGrids.TDBGrid. И переопределить процедуру Paint. Как это:
type
TDBGrid = class(Vcl.DBGrids.TDBGrid)
protected
procedure Paint; override;
end;
На процедуру рисования:
procedure TDBGrid.Paint;
var
i, X, Y: Integer;
begin
inherited;
Y := RowHeights[0] + 1;
X := Width;
for i := 1 to Self.RowCount - 1 do
begin
Y := Y + RowHeights[i] + 1;
Canvas.Brush.Color := clRed;
Canvas.FillRect(Rect(0, Y, X, Y + 1));
end;
end;
И это конечный результат: