FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Destroy en OnClose de MDIChild
Amigos del foro:
En un programa DMI que estoy desarrolando tengo un menú en la ventana madre, y al cual (en parte) deshabilito si no hay ventanas hijas. En la ventana hija (es siempre la misma, la creo cuantas veces necesite), en su evento OnClose coloco lo siguiente:
Hago esto porque es la única forma de actualizar el menú, porque si lo coloco en el evento OnDestroy no funciona. Pero, ¿es esto correcto? ¿Hay alguna otra forma mejor de hacerlo? Gracias. |
#3
|
||||
|
||||
Pues no
porque al llamar a ActualizarMenus la ventana sigue existiendo y entonces el menu no cambia para nada (por eso tuve que recurrir a lo que antes he puesto), pero gracias de todas formas |
#4
|
||||
|
||||
Cierto, no había caido en eso. Pero a ver, lo que haces puede darte problemas por varias razones:
1. Se aconseja el uso de Free en lugar de Destroy; 2. No se aconseja destruir un formulario desde alguno de sus eventos y en su lugar debe usarse Action := caFree en el evento OnClose. Te pongo una forma de hacer lo que deseas. Esta ya la he probado 1. Al formulario hijo déjalo sólo con el Action := caFree en el OnClose. 2. Cuando crees un nuevo formulario hijo, le pides que notifique a su padre cuando fallezca
3. En el formulario padre redefine el método Notification para recibir tal notificación:
// Saludos Última edición por roman fecha: 03-10-2006 a las 19:58:14. |
#5
|
||||
|
||||
Sin palabras Roman, me encanta cuando te sacas cosas como esta de la manga. Esta me la guardo ...
|
#6
|
||||
|
||||
Pues te lo agradezco. De hecho, en mi opinión/gusto, esta técnica es la más apropiada para el sempiterno problema de crear un formulario sólo si no existe ya:
Es el padre quien pone en nil la referencia FormHijo cuando recibe la notificación de defunción. // Saludos |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Al cerrar Form no entra en OnClose | nowheremanza | OOP | 2 | 13-09-2005 14:04:41 |
Otra de diferencias... (free y destroy) | FunBit | OOP | 3 | 03-09-2005 02:33:39 |
Destroy de mala madre... | Xianto | OOP | 9 | 31-03-2005 20:24:11 |
Diferencias entre FREE y DESTROY | bustio | OOP | 1 | 23-06-2004 05:48:35 |
Manejo Del Free Y El Destroy | Robert | SQL | 4 | 19-03-2004 15:11:34 |
|