Как отобразить выбранную строку DBGrid различными цветами?

Previous  Top  Next

    
 

 

Если Вы хотите раскрасить выбранную строку DBGrid, но не хотите использовать опцию dgRowSelect, так как хотели бы редактировать данные, то можно воспользоваться следующей технологией в событии DBGrid.OnDrawColumnCell:

 

Code:

type

TCustomDBGridCracker = class(TCustomDBGrid);

 

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;

const Rect: TRect; DataCol: Integer; Column: TColumn;

State: TGridDrawState);

begin

with Cracker(Sender) do

   if DataLink.ActiveRecord = Row - 1 then

     Canvas.Brush.Color := clRed

   else

     Canvas.Brush.Color := clWhite;

DefaultDrawColumnCell(Rect, DataCol, Column, State);

end;

 

 

©Drkb::03019

Взято из http://forum.sources.ru