- // 1. create new blank field in dbgrid
- // 2. rename the title with 'No'
- // 3. put this code in OnDrawColumncell
- // 4. Now your Grid has a row number
- procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
- DataCol: Integer; Column: TColumn; State: TGridDrawState);
- begin
- if DataSource1.DataSet.RecNo > 0 then
- begin
- if Column.Title.Caption = 'No' then
- DBGrid1.Canvas.TextOut(Rect.Left + 2, Rect.Top, IntToStr(DataSource1.DataSet.RecNo));
- end;
- end;