2008-11-16 8 views
8

Ich habe ein TDbGrid, und ich kann leicht sagen, wie viele Spalten sind es zur Laufzeit mit der FieldCount-Eigenschaft, aber es scheint keine entsprechende RowCount-Eigenschaft zu sein, um anzuzeigen, wie viele Datensätze sind angezeigt werden. Wie kann ich das herausfinden?Zählen der Zeilen in einem TDbGrid

Antwort

8

Sie könnten versuchen:

DBGrid1.DataSource.DataSet.RecordCount 

Vielleicht bessere Lösungen gibt. Aber das hat für mich funktioniert.

+3

TDataSet.RecordCount wird oft geben -1 je nach Situation (wie Abfragen). –

+0

Danke, es sieht so aus als ob ich etwas db Programmierung machen muss, sonst verliere ich die Berührung. (Zwei Jahre arbeiten an einer DB weniger App). –

+0

In der Tat, Lars? So viel Zeit mit TClientDataset, daran konnte ich mich nicht erinnern. Welche Art von Abfrage-Objekten (ADO, IBX oder DBX) zeigen dieses Verhalten? Ich glaube, dbx würde, weil es Komponenten sind unidirektionale Cursor - aber es gibt mehr? –

11

Sowohl RowCount als auch VisibleRowCount sind geschützte Eigenschaften in TCustomGrid, die nicht in TDBGrid freigelegt sind. Aber Sie können das folgendermaßen umgehen:

Seien Sie gewarnt, dass dies die Kopfzeile enthält.

1

Ich würde verwenden

TDbGrid.ApproxCount 
Verwandte Themen