procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect; Field: TField; State: TGridDrawState); begin if gdSelected in state then SetBkColor(dbgrid1.canvas.handle,clgreen) else setbkcolor(dbgrid1.canvas.handle,clwhite); dbgrid1.Canvas.TextRect(rect,0,0,field.AsString); dbgrid1.Canvas.Textout(rect.Left,rect.Top,field.AsString); end;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if (state=[gdSelected]) or (state=[gdSelected,gdFocused]) then begin if not form1.DBGrid1.SelectedRows.CurrentRowSelected then form1.DBGrid1.Canvas.Brush.Color:=clred; end; form1.DBGrid1.Canvas.Pen.Mode:=pmmask; form1.DBGrid1.DefaultDrawColumnCell(rect,datacol,column,state); end;
Field: TField; State: TGridDrawState);
begin
if gdSelected in state then
SetBkColor(dbgrid1.canvas.handle,clgreen)
else
setbkcolor(dbgrid1.canvas.handle,clwhite);
dbgrid1.Canvas.TextRect(rect,0,0,field.AsString);
dbgrid1.Canvas.Textout(rect.Left,rect.Top,field.AsString);
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (state=[gdSelected]) or (state=[gdSelected,gdFocused]) then
begin
if not form1.DBGrid1.SelectedRows.CurrentRowSelected then
form1.DBGrid1.Canvas.Brush.Color:=clred;
end;
form1.DBGrid1.Canvas.Pen.Mode:=pmmask;
form1.DBGrid1.DefaultDrawColumnCell(rect,datacol,column,state);
end;