| |
| Displaying the selected row of a DBGrid in a different color |
 |
How can I show selected row in a dbgrid in a different color without using dgRowSelect (because I need to edit the data)?
If you want to color the selected row in a DBGrid but you don't want to use the dgRowSelect option because you want to be able to edit the data you can use the following technique on the DBGrid.OnDrawColumnCell event:
type
TCustomDBGridCracker = class(TCustomDBGrid);
procedure TForm .DBGrid DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
with Cracker(Sender) do
if DataLink.ActiveRecord = Row - then
Canvas.Brush.Color := clRed
else
Canvas.Brush.Color := clWhite;
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|