Ver Mensaje Individual
  #2  
Antiguo 13-08-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por MITOPE
ya me di cuenta que no es tan facil como el Stringrid.
No es tanto que sea más difícil sino que su naturaleza es completamente distinta aunque se vea semejante. Un DBGrid realmente no contiene los datos que presenta al usuario sino que se limita a mostrar los que contiene el DataSet (TTable, TQuery, etc.) asociado. De hecho, a diferencia de un StringGrid, un DBGrid nunca posee más filas de las que en un momento dado se muestran en la pantalla. Conforme te desplazas (por ejemplo con la barra de scroll), el DBGrid va pidiendo datos al DataSet y los muestra en las misma filas que ya tenía.

Por decir algo, si el DBGrid está mostrando los registros del 123 al 138, es imposible que le pidas los valores del registro 548 ya que simplemente no dispone de esos datos.

Con los DBGrid tienes que tratar directamente con el DataSet asociado. Si quieres leer los datos de un registro en particular tendrás que valerte de métodos como Locate del DataSet para colocarte en él y obtener los valores usando no el DBGrid sino directamente con la propiedad Fields del DataSet o su método FieldByName.

En fin, que es una cosa totalmente distinta y para usos muy disímiles.

// Saludos
Responder Con Cita