Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   cantidad de filas de un dbgrid (https://www.clubdelphi.com/foros/showthread.php?t=1626)

miguelb 21-06-2003 00:26:20

cantidad de filas de un dbgrid
 
Como puedo conocer la cantidad de filas de un dbgrid?
gracias
miguel

delphi.com.ar 21-06-2003 00:35:52

Lo más fácil es averiguando la cantidad de registros del DataSet que "alimenta" al DBGrid.
Código:

DataSet.RecordCount
Es bueno saber que para que el DataSet "averigüe" la cantidad de registros del Query/Tabla, es necesario que este vaya al último registro, y esto en consultas muy grandes puede demorar mucho y a su ves, consumir muchos recursos. Es un error muy común utilizar RecordCount para averiguar si el DataSet no está vacío.

Saludos!

marcoszorrilla 21-06-2003 14:27:47

Respuesta literal:

Código:

ShowMessage(IntToStr(TStringGrid(DBGrid1).RowCount));
Aunque el compañero Delphi.com.ar creo que ya te ha respondido a lo que en realidad preguntabas.

Un Saludo.

delphi.com.ar 23-06-2003 17:59:21

Marcoooos... creo que ya hemos discutido el tema de hacer un Cast a una clase que no pertenece a la descendencia de la misma clase..... (Aquí)
Igualmente me surge una duda, cuando el DBGrid tiene un Query grande y pagina su resultado, el RowCount ya ha sido cargado???... o es mentiroso... yo aseguraría que el dato es engañoso!

Saludos!

marcoszorrilla 23-06-2003 18:05:29

Hola:

Creo que no se ha interpretado bien mi respuesta, el resultado que se obtiene con el código propuesto por mí, es el número de filas que tiene el DbGBrid, es decir algo que ya sabemos en tiempo de diseño, nada tiene que ver con el número de registros que pueda tener el Ttable o el Tquery en cuestión.

Lo que sucede que Rows, tiene 2 interpreteaciones en ingles fila, en el sentido estricto y registro.

En resumen si yo diseño un DbGrid de 10 filas y obtengo de una consulta 1000 registros la instrucción por mi propuesta dará como resultado 10 y no 1.000, por eso yo hablaba de una respuesta literal.

Un Saludo.

delphi.com.ar 23-06-2003 18:25:43

Ahhh... entonces por eso lo de "Respuesta literal".... :D ... Ahora siiiii
(El TCustomGrid tiene el método GetVisibleRowCount, que creo que es mas propicio para estos casos, pero tenemos que publicarlo)


Saludos!

marcoszorrilla 23-06-2003 20:45:58

GetVisibleRowCount.
No conozco ese método de la clase TcustomGrid.

Sino:
VisibleRowCount
VisibleColCount

Supongo te refieres a estos que cito?


Un Saludo.

delphi.com.ar 23-06-2003 21:02:43

Eso!!!... si es verdad...
Yo tenía la idea que GetVisibleColCount, GetVisibleRowCount eran métodos protegidos porque recordaba haberlos usado en un componente heredado de TCustomGrid, pero son privados así que seguramente cuando los use, use directamente las propiedades que tu indicas.

Saludos!


La franja horaria es GMT +2. Ahora son las 01:29:39.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi