Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Los DBGrid y sus scrollbars (https://www.clubdelphi.com/foros/showthread.php?t=4874)

SnaKe 31-10-2003 14:51:00

Los DBGrid y sus scrollbars
 
Hola,

Tengo un DBGrid enlazado a un DataSet, todo funciona correctamente pero hay un detalle que quiero evitar y es que el indicador del registro actual no se mueva cuando utilizo la barra de desplazamiento del Grid, el grid tiene la propiedad RowSelect y ReadOnly establecidas.

Imaginemos que por el tamaño del grid solo caben 3 filas, bien, selecciono la segunda y quiero que la segunda se mantenga seleccionada aunque yo utilice la barra de desplazamiento del grid, o lo que es lo mismo, que el "cursor" del dataset no se mueva.

Espero que me haya explicado con suficiente claridad para que me podais ayudar.

He probado con DBGrid y RxDBGrid y ambos hacen lo mismo, el grid está enlazado a un Dataset, el dataset está enlazado a un TADOQuery y el TADOQuery a un TADOConnection.

Gracias por adelantado.

roman 31-10-2003 18:19:23

Veo un poco difícil que logres esto. Es una manía exasperante de los dbgrids suponer que el desplazamiento por el grid y el desplazamiento por el dataset son siempre la misma acción.

Lo que intentaría es olvidarme del grid y usar un ListView en modo virtual. En su evento OnData llenas el item que le toca tomando los datos directamente del AdoQuery.

Claro que esto supone que la conexión te permite asignar la propiedad Row del AdoQuery a un índice arbitrario.

// Saludos

Descendents 31-10-2003 19:02:18

Te entiendo, pero,
Solo se me ocurre que te quedes con el RECNO del query y que vayas hacia el una vez lo necesites.

roman 31-10-2003 19:11:26

Cita:

Posteado originalmente por Descendents
Te entiendo, pero,
Solo se me ocurre que te quedes con el RECNO del query y que vayas hacia el una vez lo necesites.

Yo no entiendo qué entiendes, ¿entiendes a Snake o a mí? :D
Pero me hiciste darme cuenta de mi error. En efecto, sería RecNo y no Row.

Gracias


La franja horaria es GMT +2. Ahora son las 03:50:09.

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