FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
¿Cómo cerrar un Grid desde el OnKeyDown?
Wuenas.
Pues eso, que si alguna alma caritativa sabe como cerrar (remover, borrar, ...) un Grid por código desde el evento OnKeyDown del mismo. Gracias anticipadas. Pedro J.Fdez.
__________________
Un Saludo desde San Fernando (Cádiz) ESPAÑA. Pedro J.Fdez. pedrofdez@ono.com pfsoftware@ono.com |
#2
|
||||
|
||||
No entiendo muy bien lo que quieres decir con 'cerrar', 'remover' o 'borrar' el DBGrid ?
Cerrar, se cierra el DataSet asociado al mismo, con lo que el DBGrid deja de mostrar dato alguno. Remover no lo remueves hasta que cierras el Form y se libera tanto el DBGrid como el Form (al menos eso sería lo lógico). Si lo que quieres hacer es crear y destruir un DBGrid en tiempo de ejecución, no le veo la utilidad concreta. Borrar el DBGrid valdría la explicación con respecto a Remover. Además podrías (dependiendo de lo que quieras hacer), 'ocultar ' el DBGrid con lo cual parecería que lo has 'Borrado' o 'Removido', poniendo su propiedad Visible a False. En cualquiero de estos casos también de aconsejaría deshabilitar el DataSet asociado (con un simple Close del DataSet). Cualquiera de estas posibilidades, sin más las puedes hacer en cualquiera de los eventos propios del DBGrid, por ejemplo el evento OnKeyDown.
Si no es esto lo que pedías, no entendí tu pregunta. Saludos
__________________
Piensa siempre en positivo ! |
#3
|
|||
|
|||
Ejemplo de lo que hago y "kaska"
Cojo un Grid de la paleta de componentes y lo suelto enel formulario, sin enlazar con DataSet alguno, sólo lo que he dicho. En el evento OnKeyDown del Grid pongo lo siguiente:
if (Key = VK_F4) and (ssCtrl is Shift) then DBGrid1.Free; Sale Error Access violation..... ?????
__________________
Un Saludo desde San Fernando (Cádiz) ESPAÑA. Pedro J.Fdez. pedrofdez@ono.com pfsoftware@ono.com |
#4
|
|||
|
|||
Correción
no es ssCtrl is Shift, lo correcto es ssCtrl in Shift. Pero no és por ésto por lo que falla. Es que me he equivocado al escribirlo en el foro.
__________________
Un Saludo desde San Fernando (Cádiz) ESPAÑA. Pedro J.Fdez. pedrofdez@ono.com pfsoftware@ono.com |
#5
|
||||
|
||||
Hola
Podrias acrarar si es un StringGrid o un DBGrid..... existe una gran diferencia... si es un StringGrid... lo que puedes hacer es lo sgtes para borrar todo debes poner algo así
declaro un procedimiento para limpiar el StringGrid... y este proceso lo realiza independiente de cuantas filas tenga tu StringGrid Espero que te sirva.. ahh.. y debes explicar mejor lo que quieres hacer.. así uno no anda adivinando... me falto.. para limpiar en el evento onkeydown, solo debes poner el nombre del procedimiento anterior...
y con eso estaria listoko
__________________
BlueSteel |
#6
|
||||
|
||||
Entiendo que lo que utiliza pfsoft es un TDBGrid.
La verdad es que probé lo que dice y es cierto : dá error. Intentas poner un DBGrid en un form sin más, y después intentas hacer un Free del DBGrid en tiempo de ejecución (sin cerrar el propio form), y salta un error. No sé el porqué, así que no pude dar mayores explicaciones. Por otro lado, tal y como dije, lo que no sé es por qué hacer un Free del DBGrid en tiempo de ejecución. Pero en eso no me meto. La solución que yo veo de momento (pero que no soluciona el problema planteado), es poner el Visible := False
__________________
Piensa siempre en positivo ! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Cómo cerrar otra aplicación desde la mía? | Alcolea | Varios | 1 | 22-03-2007 03:02:35 |
Como vuelvo el foco a una grilla despues del ONKEYDOWN | Ericato | Varios | 3 | 12-03-2007 16:40:17 |
¿Como cerrar el explorer.exe desde el que se llamó a mi aplicación? | jumasuro | API de Windows | 0 | 08-02-2007 20:54:50 |
Cómo cerrar otra aplicacion desde mi aplicacion en Delphi 7 | Gaby123 | API de Windows | 5 | 04-01-2007 22:44:51 |
Como cerrar le IE desde el còdigo?... | Sinaloense | OOP | 2 | 25-05-2004 08:29:53 |
|