Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Dudas sobre formularios

Estas en el tema de Dudas sobre formularios en el foro de Visual Basic clásico en Foros del Web. Hola a todos: Esta es una duda técnica, que la verdad no sé por que pase, sin embargo espero aqui encontrar la respuesta. Tengo una ...
  #1 (permalink)  
Antiguo 17/02/2010, 16:48
 
Fecha de Ingreso: agosto-2007
Mensajes: 268
Antigüedad: 16 años, 8 meses
Puntos: 2
Dudas sobre formularios

Hola a todos:

Esta es una duda técnica, que la verdad no sé por que pase, sin embargo espero aqui encontrar la respuesta. Tengo una aplicacion (exe), que utiliza muchas formas, para exponer mejor mi problema solo me avocare a 2 de ellas. Cada forma (por logica corre varios procesos). Dentro de la aplicacion la Forma A llama a forma B de manera modal, cuando presionamos ctrl + F5. Ahora la forma B esta en pantalla, pero los procesos de la forma A siguen corriendo detras.
¿Alguien sabe por que?

El otro punto es, al terminar un proceso de cierre, se supone qque la forma B debe terminar, sin embargo, cuando la aplicacion corre en red, la forma B se sigue mostrando y tarda alrededor de 30 seg en dejar de mostrarla y regresar el control a la forma A, aunque los procesos de la forma A se siguen ejecutando. NO son formas MIDI

¿Porque sucede esto?

Saludos...
  #2 (permalink)  
Antiguo 18/02/2010, 07:14
 
Fecha de Ingreso: mayo-2008
Mensajes: 14
Antigüedad: 16 años
Puntos: 0
Respuesta: Dudas sobre formularios

podrias ser mas explicito en tu pregunta??? a que llamas formas???, son formularios distintos?? o procedimientos dintintos...que hace cada farmulaario?????....responde esto y vemos de darle una solución, saludos
  #3 (permalink)  
Antiguo 18/02/2010, 11:09
 
Fecha de Ingreso: agosto-2007
Mensajes: 268
Antigüedad: 16 años, 8 meses
Puntos: 2
Respuesta: Dudas sobre formularios

Hola Valentino_M:

Gracias por contestar. Si al decir formas me refiero a formularios, en efecto son 2 formularios distintos y para ser un poco más especificos, cada uno trabaja diferentes operaciones uno se encarga de capturar los datos de la venta y otro de guardar informacion sobre el cobro
  #4 (permalink)  
Antiguo 18/02/2010, 12:05
 
Fecha de Ingreso: mayo-2009
Mensajes: 238
Antigüedad: 15 años
Puntos: 7
Respuesta: Dudas sobre formularios

Cada funcion o proceso que ejecutes en un form consume memoria y al cerrarlo puede tardar un poco en terminarse dependiendo de lo que hayas hecho como pueden ser recordset's u otras cosas.

Debes utilizar el evento unload de cada formulario y ahi liberar la memoria por ejemplo para liberar los recordsets solo se igualan a nothing y luego se cierra con .close no se como sera en otras situaciones.

Tambien debes utilizar la funcion un unload me para descargar los formularios totalmente.
  #5 (permalink)  
Antiguo 18/02/2010, 12:52
 
Fecha de Ingreso: agosto-2007
Mensajes: 268
Antigüedad: 16 años, 8 meses
Puntos: 2
Respuesta: Dudas sobre formularios

Gracias zsx23 por responder, con respecto a lo que me dices entiendo que de algun modo el formulario tarda más en cerrar debido a que esta "cerrando" esos objetos, o bien, liberando la memoria?.

Entonces de ahi puedo deducir que l hecho de utilizar la instruccion "option explict" es altamente recomendable? y que de algun modo, todas las variables debende cerrarse al momento d cerrar un formulario para evitarque se tarde tanto en cerrar?.

Que pasa con las varables globales? Y si estas variables globales son recordset?

Espero podamos comentar algo al respecto

Saludos...
  #6 (permalink)  
Antiguo 18/02/2010, 13:58
 
Fecha de Ingreso: mayo-2009
Mensajes: 238
Antigüedad: 15 años
Puntos: 7
Respuesta: Dudas sobre formularios

option explict se utiliza para tener que declarar todas las variables obligatoriamente y sí puede ayudar al momento de cerrar un form, asumo que lo mismo sucede al declarar el tipo de dato aunque me parece que al momento de cerrar eso ya no importa.

Ahora yo te puedo hablar sobre recordset que para cerrarlos y descarlos lo hago asi:

Código:
Private Sub Form_Unload(Cancel As Integer)
    
  ' cierra los recordset
  If Not rst1 Is Nothing Then
      rst1.Close
      Set rst1 = Nothing
  End If
    
End Sub
Ahora las demas variables deben cerrarse y vaciarse automaticamente al hacer un "unload me" al cerrar el form, al menos no me percatado de eso yo solo limpio los rs.

Hablando de recordset's recuerda que con Nothing vacias la variable recordset y con close la cierras.

Si vas a necesitar el contenido de una variable global en varios form entonces no debes vaciarla, pero si la necesitas en diferentes form de forma independiente puedes vaciarla y cerrarla en cada form.

En resumen no creo que debas preocuparpe por vaciar todas las variables solo por los recordset.
  #7 (permalink)  
Antiguo 18/02/2010, 14:12
 
Fecha de Ingreso: agosto-2007
Mensajes: 268
Antigüedad: 16 años, 8 meses
Puntos: 2
Respuesta: Dudas sobre formularios

Gracias nuevamente zkxs23 por responder. Verificaré que puede esar pasando porque sitarda mucho tiempo en cerrar una pantalla (cobro en este caso)

Saludos...

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:33.