Как отобразить выбранную строку DBGrid
различными цветами
Если Вы хотите раскрасить выбранную строку DBGrid,
но не хотите использовать опцию dgRowSelect, так как
хотели бы редактировать данные, то можно
воспользоваться следующей технологией в событии
DBGrid.OnDrawColumnCell:
type
TCustomDBGridCracker = class(TCustomDBGrid);
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
With TCustomDBGridCracker(Sender) Do
if DataLink.ActiveRecord = Row - 1 then
Canvas.Brush.Color := clRed
else
Canvas.Brush.Color := clWhite;
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
|