计算TDbGrid中的行数

Mas*_*ler 8 delphi datagrid

我有一个TDbGrid,我可以很容易地告诉它在运行时有多少列使用FieldCount属性,但似乎没有相应的RowCount属性来显示正在显示的记录数.我怎么能找到这个?

Ste*_*eve 11

这两个RowCountVisibleRowCount保护性质TCustomGrid,在不暴露TDBGrid.但你可以做到以下几点:

type
  TDummyGrid = class(TDBGrid);

  RowCount := TDummyGrid(MyDBGrid).RowCount;
  VisibleRowCount := TDummyGrid(MyDBGrid).VisibleRowCount;
Run Code Online (Sandbox Code Playgroud)

请注意,这包括标题.


Too*_*the 8

你可以尝试:

DBGrid1.DataSource.DataSet.RecordCount
Run Code Online (Sandbox Code Playgroud)

也许有更好的解决方案.但这对我有用.

  • TDataSet.RecordCount通常会根据情况(如查询)给出-1. (3认同)