![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
¿Qué código necesitas ejecutar al cerrar el form?
Igual no deberías hacerlo en ese momento. Quizás haya un momento mejor de hacerlo. Quizás se le deba proporcionar un evento al usuario del componente... con esto quiero decir que estas intentando modificar el comportamiento de algo que no es tuyo, y por tanto, quizás no sea buena idea hacerlo. Cuando declaras una variable reservando memoria.... ¿el form se encarga de liberarlo? No, eres tú en el Onclose de la ventana el encargado de hacer un .Free del mismo. La solución más rápida es proporcionar un método al usuario de tu componente que pueda ser llamado al cerrar el form o cuando al usuario se le antoje. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#2
|
||||
|
||||
|
Que tal lepe, gracias por contestar.
Bien, el código que se ejecuta al cerrar el form es una rutina en particular que he creado y que aplica para uno o varios forms. Si yo como desarrollador se que un formulario en particular necesita ejecutar dicho código... simplemente agrego mi componente y listo. Pondré un simple ejemplo.... imagina que encapsulé en un nuevo componente la famosa pregunta "¿Esta seguro que desea salir?", esta rutina la pude haber diseñado como una función que no pertenece a niguna clase y mandarla a ejecutar las veces que sea necesario en los forms que sean necesarios..... ahora yo voy un poco mas adelante... imagina que en lugar de tener que hacer la llamada de manera explicita lo hago de manera implicita a través del componente. Con solo agregarlo bastaria para que cada vez que se intente cerrar el form la rutina que envia el mensaje se ejecuta. En pocas palabras escribir menos y solo dedicarme a "ensamblar". Asi que si por algún motivo necesito ademas de la pregunta de cierre del form, agregar otras lineas de código (que solo aplica en un caso en particular) y esas lineas las agrego en el evento OnCloseQuery del form ... solo se ejecuta la rutina del componente y no ambas. Seguire investigando, a ver que puedo encontrar... y si hay mas ideas, pues serán bien recibidas. Saludos! |
|
#3
|
||||
|
||||
|
Antes de asignar tu propio evento CloseQuery guarda el que pudiera tener el formulario para poder llamarlo en su momento. Te pongo un ejemplo, está en delphi pero imagino que no tendrás problemas para pasarlo a C++:
// Saludos |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Llamar evento desde otro evento | nachito_tuc | OOP | 1 | 23-08-2006 21:37:43 |
| Override eventos On... | lento manu | OOP | 12 | 08-10-2005 11:37:31 |
| Procedure SetVisible... ; override | elcigarra | OOP | 3 | 22-07-2005 19:27:27 |
| Qué Evento Programar | andresenlared | Conexión con bases de datos | 1 | 30-12-2003 20:57:18 |
| evento OnRecordChange? | pepe2000 | Tablas planas | 3 | 18-12-2003 15:59:34 |
|