PDA

Ver la Versión Completa : controlar un dbGrid


Gangster
06-07-2007, 20:33:51
Un Problemilla, tengo con un dbgrid, lo que me pasa es que tengo un dbgrid que uso dentro de una forma, entonces hago un renglon, y paso a otro y asi sucesivamente, pero mi duda o lo que no controlo, es que al pasar de renglon, paso renglon y de repente me voy a darle un click a algun boton, y el renglon nuevo se quita y el apuntador se sube al renglo anterior, eso es lo que no quiero, si no como decirle a un grid que se quede ahi en el renglon nuevo asi en blanco que no se suba al anterior, ojala y tengan una solucion o alguna idea, Gracias, Saludos y Bye.

Caral
06-07-2007, 20:50:25
Hola
Esto me parece que es el famoso problema del dbgrid echizado :D
Sin saber lo que hace el boton (posiblemente echizado tambien :D ) es muy dificil dar una opinion.
Tienes algun codigo:confused:
Saludos

jhonny
06-07-2007, 20:54:07
Si eso es lo que necesitas, pues al DataSet que esta amarrado al Grid deberías hacerle un Append; desde el OnClick de dicho botón. Esto ultimo hará parecer que nada sucedió, pero si lo que quieres es que definitivamente no suceda, entonces intenta colocando un Abort; en el BeforeCancel del Dataset.

jhonny
06-07-2007, 20:59:40
Aunque debo advertir, que lo del Abort; acabo de probarlo y funciona tan bien que no deja que el OnClick del botón se dispare :D, osea que no creo que sea la mejor solución :).

jhonny
06-07-2007, 21:13:16
Increíble¡¡¡, la respuesta era mas sencilla que todo eso:

Solo es cuestión de quitar la opción dgCancelOnExit de la propiedad Options del DBGrid... Un ejemplo por codigo, sería asi:


DBGrid1.Options := DBGrid1.Options - [dgCancelOnExit];

Gangster
06-07-2007, 21:31:01
Increíble¡¡¡, la respuesta era mas sencilla que todo eso:

Solo es cuestión de quitar la opción dgCancelOnExit de la propiedad Options del DBGrid... Un ejemplo por codigo, sería asi:

Código Delphi [-] (http://www.clubdelphi.com/foros/#)
DBGrid1.Options := DBGrid1.Options - [dgCancelOnExit];


Muchas Gracias Jhonny y Caral por darme ideas y si sirvio lo de dgcancelonexit
asi que ya problema solucionado, Gracias por sus repsuestas y lo a tiempo que fueron.