Discussion:
Cargar y descargar formularios
(demasiado antiguo para responder)
Gemma
2004-11-27 12:14:31 UTC
Permalink
Hola a todos: Alguno de vosotros me podría indicar una página o direccion
que aborde profundamente el tema de cargas y descargas de formularios, con
todos los eventos que puedan suceder. Os quedaría muy agradecida, porque
tengo problemas en una aplicación con formularios de todo tipo, y no me
acaba de correr la misma como quisiera. A poder ser que explique los
diversos eventos y los diferentes tipos de formularios.
Muchas gracias a todos como siempre.
Gemma.
SoftJaén
2004-11-27 13:00:53 UTC
Permalink
Post by Gemma
Alguno de vosotros me podría indicar una página o direccion
que aborde profundamente el tema de cargas y descargas de
formularios, con todos los eventos que puedan suceder.
Hola, Gemma:

Abre la ayuda de Visual Basic y busca el siguiente tema:

Ciclo de vida de los formularios de Visual Basic

Allí encontrarás información sobre los diferentes estados por los que pasa
un formulario de Visual Basic, y los eventos que se desencadenan.

Un saludo
--
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.
Gemma
2004-11-27 16:28:21 UTC
Permalink
Hola amigo mío. Espero que te encuentras pleno de salud tu y tu familia.
Enrique, es que la aplicación que ya te he comentado varias veces, está
acabada pero el control de cierres i descargas de formularios no me acaba de
gustar. Los Unloads, los query unloads, Hide, etc. no es lo que acabo de
necesitar, he mirado libros, gogles, etc., pero no me acababa de satisfacer
mis necesidades. Ahora con esto creo que ya lo tengo.
Enrique, no se si este es el mejor sitio para preguntarlo, si ves que no es
así me lo dices y lo cambiaré a pregunta de foro. Te comento: La aplcación
lleva demo, multiempresa, nultiejercicio, y un largo etc; pero lo que me
falta para hacer y que aún no he estudiado es hacerla para que funcione en
red. He comprado un libro que habla de eso, Visual Basic, Sql y Bases de
datos. No se si para hacerlo todo en SQL y Basic, sería mejor otros libros,
en fin, que me enrollo como siempre, directamente te pregunto Enrique, que
es lo mejor para aprender ha hacer que las aplicaciones funcionen en red, si
tu tienes alguna información o libro, te agradeceré enormemente queme digas
cual o que tengo que comprar, para ir aprendiendolo bien, busco algo
parecido a lo que tu tienes en ADO, DAO y Excel y los otros cursillos tan
valiosos que tengo hechos por ti.
Bueno amigo mío, recibe un fuerte abrazo y un beso de tu amiga.
Gemma.
"Gemma" preguntó:> > Alguno de vosotros me podría indicar una página o
direccion
Post by Gemma
que aborde profundamente el tema de cargas y descargas de
formularios, con todos los eventos que puedan suceder.
Ciclo de vida de los formularios de Visual Basic
Allí encontrarás información sobre los diferentes estados por los que pasa
un formulario de Visual Basic, y los eventos que se desencadenan.
Un saludo
--
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.
SoftJaén
2004-11-27 17:45:35 UTC
Permalink
Post by Gemma
Enrique, no se si este es el mejor sitio para preguntarlo, si ves que no
es así me lo dices y lo cambiaré a pregunta de foro. Te comento: La
aplicación lleva demo, multiempresa, nultiejercicio, y un largo etc;
pero lo que me falta para hacer y que aún no he estudiado es hacerla
para que funcione en red.
Pues sería mejor que iniciaras una nueva exposición para el nuevo asunto,
porque nada tiene que ver el asunto de cargar y descargar formularios, con
crear una aplicación que funcione en red. :-)
Post by Gemma
que es lo mejor para aprender a hacer que las aplicaciones funcionen
en red, si tu tienes alguna información o libro, te agradeceré enormemente
que me digas cual o que tengo que comprar, para ir aprendiendolo bien, ...
No dispongo de algún libro que te pueda recomendar para crear aplicaciones
que funcionen en red. Lo que más o menos conozco del tema, lo he ido
adquiriendo con el tiempo, cogiendo un poco de aquí, otro poquito de allí,
etc., y te podré decir que puede ser tan fácil como colocar toda la
aplicación en un servidor de red, y permitir que los usuarios abran la base
de datos (lo que se conoce como un servidor de archivos), o complicarse un
poco más la vida creando una verdadera aplicación cliente-servidor.

Mientras te decides a iniciar un nuevo mensaje, échale un vistazo a la
siguiente búsqueda realizada en Google, por si obtienes alguna información
más precisa:

http://groups.google.com/groups?hl=es&lr=&q=crear+aplicaciones+red&meta=group%3Dmicrosoft.public.es.vb
--
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.
Gemma
2004-11-27 18:01:08 UTC
Permalink
Hola Enrique. Muchas gracias y voy a empezar por saber exactamente que es lo
que puedo precisar y después si me atranco (que será lo más normal), abriré
un hilo y preguntaré. Con la información que me has dado y un poquito que
tengo yo de otros sitios, empezaré a ver por dondo van los tiros.
Enrique un saludo como siempre y muchas gracias.
Gemma.
Post by SoftJaén
Post by Gemma
Enrique, no se si este es el mejor sitio para preguntarlo, si ves que no
es así me lo dices y lo cambiaré a pregunta de foro. Te comento: La
aplicación lleva demo, multiempresa, nultiejercicio, y un largo etc;
pero lo que me falta para hacer y que aún no he estudiado es hacerla
para que funcione en red.
Pues sería mejor que iniciaras una nueva exposición para el nuevo asunto,
porque nada tiene que ver el asunto de cargar y descargar formularios, con
crear una aplicación que funcione en red. :-)
Post by Gemma
que es lo mejor para aprender a hacer que las aplicaciones funcionen
en red, si tu tienes alguna información o libro, te agradeceré enormemente
que me digas cual o que tengo que comprar, para ir aprendiendolo bien, ...
No dispongo de algún libro que te pueda recomendar para crear aplicaciones
que funcionen en red. Lo que más o menos conozco del tema, lo he ido
adquiriendo con el tiempo, cogiendo un poco de aquí, otro poquito de allí,
etc., y te podré decir que puede ser tan fácil como colocar toda la
aplicación en un servidor de red, y permitir que los usuarios abran la base
de datos (lo que se conoce como un servidor de archivos), o complicarse un
poco más la vida creando una verdadera aplicación cliente-servidor.
Mientras te decides a iniciar un nuevo mensaje, échale un vistazo a la
siguiente búsqueda realizada en Google, por si obtienes alguna información
http://groups.google.com/groups?hl=es&lr=&q=crear+aplicaciones+red&meta=group%3Dmicrosoft.public.es.vb
Post by SoftJaén
--
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.
Gemma
2004-11-28 08:53:53 UTC
Permalink
Hola Enrique: He encontrado información pero cotinúo probando y sin los
resultados esperados.

Te comento como lo hago y si tienes tiempo y ganas lo miras y me dices que
hago mal o que no hago:
Tenemos 36 formulariosm, pero te lo explico solo el proceso con 3:
Form1: Es el formulario principal., form2 y form3.
Desde cualquiera de ellos a través de la barra de menús se pueden llamar
entre si.
Para llamar desde el Form1(principal) a cualquiera de ellos, por ej. el form
2, hago lo siguiente.
Private sub Form2_click()
Set MiForm=New form2
MiForm2.show
Unload Me
Esto me carga el form2 y se descarga de memoria el form1(principal), por lo
que en la barra de tareas sole está el Form2.
Ahora desde el Form2 llamamos al Form3.
Private sub Form3_click()
Set MiForm=New Form3
Miform.show
Unload Me.
En este momento en la barra de tareas, carga el 1 y el 3, y en pantalla está
el 3.
La sentencia que utilizo paa descargar el 2 de la memoria, es:
Private sub Form-Unload (Cancel as Integer)
Set Miform= New Form1
Mi form.show
End sub

Bueno, 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. Unicamente tiene que ir al
form1 cuando cierra el form que sea mediante la aspa X, obligando al usuario
a salir por el form! y desde ahí descargar de memoria todos los formularios.
Sentencia en el Form1 para salir de la aplicación:
Private sub Form_unload(Cancel as Integer)
If msgbox ("¿Desea realmente abandonar la aplicación?", 1+32, "Análisis"
Cancel = False
Dim I as Integer
For I= Forms.Count - 1 To 0 Step-1
Unload Forms(I)
Next
End sub

Enrique 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.
Un saludo Enrique
Gemma
Post by Gemma
Hola Enrique. Muchas gracias y voy a empezar por saber exactamente que es lo
que puedo precisar y después si me atranco (que será lo más normal), abriré
un hilo y preguntaré. Con la información que me has dado y un poquito que
tengo yo de otros sitios, empezaré a ver por dondo van los tiros.
Enrique un saludo como siempre y muchas gracias.
Gemma.
Post by SoftJaén
Post by Gemma
Enrique, no se si este es el mejor sitio para preguntarlo, si ves que no
es así me lo dices y lo cambiaré a pregunta de foro. Te comento: La
aplicación lleva demo, multiempresa, nultiejercicio, y un largo etc;
pero lo que me falta para hacer y que aún no he estudiado es hacerla
para que funcione en red.
Pues sería mejor que iniciaras una nueva exposición para el nuevo asunto,
porque nada tiene que ver el asunto de cargar y descargar formularios, con
crear una aplicación que funcione en red. :-)
Post by Gemma
que es lo mejor para aprender a hacer que las aplicaciones funcionen
en red, si tu tienes alguna información o libro, te agradeceré
enormemente
Post by SoftJaén
Post by Gemma
que me digas cual o que tengo que comprar, para ir aprendiendolo bien,
...
Post by SoftJaén
No dispongo de algún libro que te pueda recomendar para crear aplicaciones
que funcionen en red. Lo que más o menos conozco del tema, lo he ido
adquiriendo con el tiempo, cogiendo un poco de aquí, otro poquito de allí,
etc., y te podré decir que puede ser tan fácil como colocar toda la
aplicación en un servidor de red, y permitir que los usuarios abran la
base
Post by SoftJaén
de datos (lo que se conoce como un servidor de archivos), o complicarse un
poco más la vida creando una verdadera aplicación cliente-servidor.
Mientras te decides a iniciar un nuevo mensaje, échale un vistazo a la
siguiente búsqueda realizada en Google, por si obtienes alguna información
http://groups.google.com/groups?hl=es&lr=&q=crear+aplicaciones+red&meta=group%3Dmicrosoft.public.es.vb
Post by Gemma
Post by SoftJaén
--
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
Post by Gemma
o
Post by SoftJaén
sugerido en el presente mensaje.
SoftJaén
2004-11-28 10:15:36 UTC
Permalink
Post by Gemma
Enrique 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 Gemma
Bueno, 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 Gemma
Unicamente 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.
Gemma
2004-11-28 11:17:10 UTC
Permalink
Hola Enrique:
Desde luego con la dichosa aplciación tengo un lío de narices con los
formularios, pero acabando esto ya estoy, lo he dejado para lo último, pero
leches, me está dando más problemas que otra cosa.
Mira voy a empezar desde cero e iré probando con todo lo que tengo porque de
verdad te digo que ni yo sé como lo tengo
Esta tarde me pongo tranquila sin jaleos de críos ni nada y a ver si
probando con tres forms me funciona y así después ya lo aplicaré a los tros.
Bueno estoy tan atabalada que no te tendría que haber escrito hasta que lo
tuviera mas claro, pero me he puesto de los nervios y ha pasado todo este
jaleo.
Enrique gracias como siempre y creo que lo voy a resolver. Te diré el final
del tema.
Un beso.
Gemma.
Post by SoftJaén
Post by Gemma
Enrique 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 Gemma
Bueno, 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 Gemma
Unicamente 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.
Loading...