DBGrid使用起来还是很方便的,但就是没有显示记录序号的功能,必须自己加,参照老外给的解决方案如下:

方案1:

1- 在DBGrid建一个第一列 (列的名字起“NO”)

2- 在DBGrid事件 DrawColumnCell 下加如下代码

procedure ....Form.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  vDbGrid: TDBGrid absolute Sender;
begin   if DataCol= then
    vDbGrid.Canvas.TextOut(Rect.Left +
                           , Rect.Top +
                           , IntToStr(vDbGrid.DataSource.DataSet.RecNo));
end;
05-08 15:44