leches, me está dando más problemas que otra cosa.
probando con tres forms me funciona y así después ya lo aplicaré a los tros.
jaleo.
Enrique gracias como siempre y creo que lo voy a resolver. Te diré el final
del tema.
Un beso.
Gemma.
Post by SoftJaénPost by GemmaEnrique no se si me he explicado, pero es una aplicación que
juega con muchos datos y por ello interesa que en memoria
unicamente resida un solo form.
Bueno, si ves algo que me pueda solucionar el problema ya me
lo dirás.
Pues si te digo la verdad, no sé si me he enterado de lo que realmente
deseas hacer. ¡Vaya lío de formularios! ¡No está nada mal para comenzar el
domingo! :-)
Post by GemmaBueno, esto lo hago para que el usuario tenga que abandonar la aplicación
desde el form1(Principal).
Evidentemente por eso carga el form1 y el 2, y lo que necesitaría es que
el Form1 no lo cargue, cuando llamo a otros forms desde cualquiera que no
sea el 1, o sea del 2 llamo al 3, del 3 al 6, etc.
Gemma, si no deseas cargar el Form1, lo que tienes que hacer es,
precisamente, no cargarlo. Si tú, al descargar el Form2, le indicas en su
evento «Form_Unload» que carge el Form1, ¿como quieres que Visual Basic no
lo carge?
Post by GemmaUnicamente tiene que ir al form1 cuando cierra el form que sea
mediante la aspa X, obligando al usuario a salir por el Form1 y
desde ahí descargar de memoria todos los formularios.
¿Conoces los formularios de Interfaz de Múltiples Documentos, más conocidos
por formularios MDI? Cuando una aplicación contiene tantos formularios,
utilizar un formulario MDI que actúe de contenedor de otros formularios
secundarios, creo que es la manera más fácil de trabajar con un número tan
grande de formularios, de esta forma, y si todo está bien encauzado, la
aplicación se cerrará cuando se cierre el formulario MDI, el cual se
encargará de cerrar todos los formularios secundarios MDI, es decir,
aquellos formularios cuya propiedad «MDIChild» esté establecida a «True», y
por tanto, no pueden ser «modales».
Esto no quiere decir que, cuando necesites mostrar un formulario como
«modal» no puedas hacerlo, porque simplemente tendrás que procurar que dicho
formulario no sea un formulario secundario MDI, es decir, que tendrá que ser
un formulario normal, de ésta forma, siempre y cuando lo muestres como
«modal», no te permitirá cambiar a otros formularios que se encuentren
actualmente abiertos en la aplicación, hasta que el usuario no cierre
expresamente el formulario modal.
En fin, no sé si mi respuesta es la correcta al problema que me has
planteado, pero es lo que he sacado en conclusión al leer tu mensaje. Vuelvo
a repetirte que, si no deseas cargar un formulario, procura que en el código
fuente no haya una instrucción que lo carge.
Por otra parte, como veo que estás utilizando una varible objeto global del
tipo «Form» llamada «MiForm», deberás de tener mucho cuidado de descargarla
de memoria, estableciendo a «Nothing» el valor de la variable objeto, porque
mientras que una varible se encuentre referenciando a un objeto, dicho
objeto permanecerá en memoria.
--
Enrique Martínez
[MS MVP - VB]
Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.