Mantener la misma vista en un DBGrid
Hola a todos
A ver si me podéis ayudar con esto. Tengo un DBGrid asociado a un ClientDataSet. En el DBGrid selecciono un celda con el raton y luego en el evento onClick de un button hago ClientDataSet.DisableControls Luego trabajo con el ClientDataSet y al final ClientDataSet.EnableControls Y lo que pretendo es que el DBGrid mantenga la misma posición (vista) y la misma celda seleccionada que antes de DisableControls Espero que alguien sea tan amable y pueda orientarme Un saludo para todos |
Se puede hacer de 2 maneras:rolleyes:.
Primera: Segunda: Saludos...:) |
Hola jaimeh, yo te aconsejo que utilices BookMark y no RecNo este último no funciona con todas las Bases de datos ni todos los componentes de BDs.
Puedes utilizar el BookMark del mismo DataSet.
Saluditos |
Muchas gracias a todos por responderme
Lo del RecNo ya lo había hecho yo y lo del bookmark hace hace lo mismo El problema está en que no se queda con la misma vista que tenía antes el dbgrid. Hay que tener en cuenta que se hace click en una celda del dbgrid que no tiene porque ser de la primera linea del dbgrid. Y al EnbledControls el primer registro que muestra el dbgrid no es el mismo que mostraba antes de disableControls aunque la celda seleccionada si es la misma. Espero haberme explicado Saludos a todos |
Hola,
ten en cuenta que en el momento que varias el dataset, te varian los datos que se muestran: me refiero que es posible que se empezaran a mostrar por un registro y estuviese otro seleccionado, que luego al cambiar el dataset ya no saldrian. Para hacer lo que dices, deberas modificar un objeto llamado datalink perteneciente al dbgrid, de tal manera que se empiece a leer desde el mismo registro que antes de cambiar el dataset, usando activerecord y currentrecord. Haz una busqueda al respecto y seguramente te sera sencillo programarlo. Un saludo. |
La franja horaria es GMT +2. Ahora son las 16:08:15. |
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