PDA

Ver la Versión Completa : Formas MDI en Delphi


Neiro
04-04-2007, 21:20:47
bue nas tardes a todos, solo para ver si alguien de ustedes me puede ayudar, estoy haciendo una aplicacion mdi pero al momento de crear una forma hija me dispara el onshow de la forma. y como en el onshow estoy utilizando algunas variables que cargo inmediatamente despues de crear la forma me sale un error de que no estan cargadas las variables

ContraVeneno
04-04-2007, 21:28:26
En el explorador de objetos, dale click con el botón derecho sobre tu proyecto (el .exe) y ponle en "View Source". Esto te mostrará el código que se ejecuta al iniciar. Ahí podrás ver que se crean los formularios, solo es cuestión de que elimines la línea donde se crea el formulario hijo.

Neiro
04-04-2007, 21:48:56
creo que me falto dar mas informacion, lo que esta pasando es que en situaciones normales el hecho de que crees una forma no te dispara el onshow de la forma, mas sin embargo cuando creo una aplicacion mdi al momento de crear la forma si me dispara el evento onshow de la misma.

Lo que ocuparia es crear la forma hija
Application.CreateForm(TFmMFNBuscarunRegistro, FNBuscarUnRegistro);

pero que no me dispare en evento onshow de esta misma forma

Lepe
05-04-2007, 13:04:30
Lo que te pasa, es porque los creadores de la VCL lo plantearon así, dicho de otra forma, ajo y agua :D.

Tienes que ir a las opciones del proyecto y quitar todas las ventanas de autocreate y dejarlas en available.

Después crear las ventanas (como haces) y destruirlas al cerrar la ventana, podrías hacerlo en el evento OnClose del MDICHILD con action := cafree;

Como poder... se puede ocultar las ventanas mdiChild, pero desde luego no es normal ni la forma de trabajar con ellas. Incluso te ayuda a trabajar mejor y separar las cosas.

Saludos