Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close() (solucionado)


Objetivo: Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close() (solucionado)
Me he encotrado un ejemplo muy sencillo y claro del Modelo-Vista-Controlador en java (Enlace) y lo estoy pasando a Gambas3.

En principio no he tenido ninguna difilcutad en pasarlo, pero me he "tropezado" con un problema, os explico.

-La clase "controlador", tiene entre sus propiedades los objetos clase formularios "miVentanaPrincipal", "miVentanaRegistro",y "miVentanaBuscar".
El problema se me plantea cuando cierro (usando me.close()) una de esas ventanas, ya que se "borra" el objeto, y cuando intento volver a abrir con "controlador.miVentanaRegistro.show()", me dice que el objeto es nulo. Por lo tanto entiendo que cuando cierro la ventana (le doy a la X del borde de la ventana, o uso me.close() ), se borra el objeto "miVentanaRegistro".

Intentando solucionar este problema (que no se borre el objeto), y para evitarlo, se me ha ocurrido "ocultar" (usando la propiedad visible del formulario) en vez de usar me.close(). Funciona perfectamente, pero si le doy a la X del borde de la ventana, se vuelve a producir el fallo (Error: objeto NULL, o algo parecido pone el Ide de gambas) cuando lo intente mostrar de nuevo.

Para evitar esto, se me ocurre quitar el borde del formulario, para que no aparezcan los botones, y asi el usuario solo podrá salir del formulario de la manera que no me de problemas ( cambiando la propiedad visible del formulario).

Me parece una solucion "chapucilla", ¿puede ver otra solucion? ¿es posible cambiar la forma de actual del evento _close cuando se activa pulsando la X del borde formulario?


Saludos

Nota:
Lo que estoy intentando hacerlo de la forma más parecida (sino casi "igual") a como se hace en el ejemplo de java.
En java usa el evento:
this.dispose();
que por lo que he leido es similar a me.close()

Nota2:
Java tambien existe el evento this.close(), pero este se parece mas a ocultar el formulario como lo haria me.visible=false en Gambas3 (por lo que he leido)

última edición por jsbsan el Sabado, 03 Agosto 2013, 20:20; editado 2 veces
Objetivo: Re: Haciendo Un Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close()
Bueno, he visto una posible solucion, usando STOP EVENT (http://gambasdoc.org/help/comp/gb.qt4/window/.close?es&v3)... la tengo que probar...

Objetivo: Re: Haciendo Un Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close()
Hola Julio!.

Y si pones la propiedad del formulario Persistent a True. ?

Es que es lo primero que se me ha ocurrido.

Saludos

Objetivo: Re: Haciendo Un Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close()
Citar:
formulario Persistent a True. ?

Ahh, pues no la conocia esa propiedad....

Parece que es la mejor opcion, tal como explica la documentacion: Enlace

última edición por jsbsan el Jueves, 01 Agosto 2013, 16:14; editado 2 veces
Objetivo: Re: Haciendo Un Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close()
Shell:

Citar:
Persistent


Funciona perfectamente.... Gracias!!!

Objetivo: Re: Ejemplo DeL Patrón MODELO-VISTA-CONTROLADOR: Problemas Con Usar Me.Close() (solucionado)
Finalmente, resuelto el problema, os dejo en enlace a mi blog que contiene un ejemplo completo del Modelo Vista Controlador:

Enlace

esquema-patron-mvc-ejemplo-gambas3


Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.105s (PHP: -32% SQL: 132%)
Consultas SQL: 25 - Debug off - GZIP Activado