Thêm số thứ tự trong TDBGrid


Đôi khi chúng ta muốn thể hiện số thứ tự của các dòng trên TDBGrid, tuy nhiên hiện tại TDBGrid trên tất cả các phiên bản của Delphi chưa cho phép chúng ta thực hiện điều này.

Chúng ta có thể thực hiện việc vẽ riêng Column này trên DBGrid bằng tay

Trên DBGrid thêm một có Caption là STT

Tiếp theo trong Event DrawColumnCell thêm dòng

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 = ‘STT’ then

DBGrid1.Canvas.TextOut(Rect.Left + 2, Rect.Top, IntToStr(DataSource1.DataSet.RecNo));

end;

end;

 

Và kết quả như sau:

Chúc các bạn thành công 🙂

Leave a comment