RAD Studio 10.4.1 is now available! Learn more. Looking for discounts? Visit our Special Offers page!

Displaying the selected row of a DBGrid in a different color

Author: Embarcadero USA

 Question and Answer Database

FAQ711D.txt   Displaying the selected row of a DBGrid in a different color
Category   :Database/VCL
Platform    :All
Product    :Delphi 3.x  

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:

  TCustomDBGridCracker = class(TCustomDBGrid);
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; 
  const Rect: TRect; DataCol: Integer; Column: TColumn; 
  State: TGridDrawState);
  with Cracker(Sender) do
    if DataLink.ActiveRecord = Row - 1 then
      Canvas.Brush.Color := clRed
      Canvas.Brush.Color := clWhite;
  DefaultDrawColumnCell(Rect, DataCol, Column, State);

7/16/98 4:31:28 PM

Article originally contributed by Borland Staff

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Deep Dive Webinar: Boost C++Builder Compile Speed with TwineCompile
Related posts
CodeDelphiRAD Studio

Learn How To Use Connection Pooling With A Multi-threaded Environment In Delphi

CodeDatabaseDelphiRAD Studio

Learn How To Use FireDAC To Work With A Firebird Database In Delphi

DatabaseRAD Studio

Newcomer's Perspective - FireDAC and SQLite

CodeDatabaseDelphiRAD Studio

Learn More About The FireDAC Connection Object In This RAD Studio Sample App

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.