Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 2 de 2
Ir a la página Anterior  1, 2
 
Guardar La Posicion De Todos Los Formularios Abiertos
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Re: Guardar La Posicion De Todos Los Formularios Abiertos 
 
Citar:

Con todo el cariño y respeto debo decir que mi propuesta es la mejor y mas sencila je je je.

Si interpretas el problema de Julio observarás que en realidad Él no tiene necesidad de contabilizar las instancias de los formularios.
 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar La Posicion De Todos Los Formularios Abiertos 
 
Hola colegas. Creo que una mezcla de todo lo expuesto sería una buena solución.

Y lo que yo haría sería:

En el evento de salida de la ventana principal - Application.MainWindow - haría algo así como:

  DIM hfrm AS Form
    FOR EACH hfrm IN Windows

        'Pon las instrucciónes que graben en un ficherito que siempre se abrirá de nuevo (CREATE)
        ' con los valores de las prop. X, Y, W, H y si las necesitas ClientX, ClientY, ClientH, ClientW
        ' Al iniciar la aplicación consulta si existe este fichero en el home del usuario y restaura todas
        ' las ventanas en el presupuesto en cuestión.
        
        'Asi de sencillo
        'También deberas grabar la clave del presupuesto para recuperarlo, y demás información necesaria
    NEXT


 Espero haber sido de ayuda.

Antonio
 



 
última edición por ahtonio el Martes, 14 Diciembre 2010, 22:54; editado 1 vez 
ahtonio - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar La Posicion De Todos Los Formularios Abiertos 
 
ahtonio:

La clase Application.MainWindow no tiene eventos, por lo que no es posible hacerlo de ese modo. Se podría pensar que la aplicación tenga un formulario del que dependan todos los demás y entonces utilizar los eventos close y open de ese form principal, pero esto tiene dos problemas insalvables:

  • Los formularios de una aplicación no tienen porqué depender de uno que sea el principal. Se tendría que forzar una decisión de diseño por razones que no son pertinentes al diseño precisamente.

  • Aún cuando todos los formularios dependan de uno que sea el principal, la única manera de que esto funcione es que el usuario cierre la aplicación desde ese form, sin cerrar previamente todos los otros formularios y eso obliga a que todos los formularios sean no-modales, es decir, otra vez se estaría forzando una decisión de diseño, pero además, sin la certeza de que esto funcione porque depende de cómo el usuario interactúe con el programa. Si el usuario cierra los formularios antes de cerrar el principal, ya no queda información de configuración que guardar.

 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar La Posicion De Todos Los Formularios Abiertos 
 
Tiene toda la razon Fabian. No obstante, ¿Como conseguir que no se cierre la aplicación sin pasar por el formulario principal?. Una solución podría ser que en el evento close de todos los forms hijos de la aplicación, en el evento close se lanzase mediante show, para que siempre estuviese abierto al fin, pero ¿Que pasará cuando cierre el principal y haya abiertos forms que muestren el principal? Es la pescadilla que se muerde la cola. Habrá que pensar........

Antonio
xxx
 



 
ahtonio - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar La Posicion De Todos Los Formularios Abiertos 
 
Antonio: me parece claro que en ese camino hay demasiadas complicaciones. Es más fácil adecuar la solución que propuso JGuardon, así:
'En cada formulario
PUBLIC SUB Form_Close()
  Config.Save(ME.TOP, ME.X, ME.Y, ME.H, ME.W, aFile AS String)
END

'En una clase estática (Config)
'Puede que se necesiten parámetros adicionales o que alguno de estos no sea adecuado:
STATIC PUBLIC SUB Save(top AS Integer, x AS Integer, y AS Integer, h AS Integer, w AS Integer, aFIle AS String)
  'Guardar los datos mediante Settings
END
 

 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes ¿cómo Puedo Mostrar Todos Los Formulario... jsoto61 General 12 Martes, 08 Diciembre 2009, 12:31 Ver último mensaje
jsoto61
No hay nuevos mensajes (Ayuda).. Como Cerra Formularios Anteriorm... OneErick General 4 Sabado, 02 Marzo 2013, 11:38 Ver último mensaje
shordi
No hay nuevos mensajes Formularios Muchos Formularios Ideas De D... codificador General 5 Viernes, 07 Junio 2013, 08:22 Ver último mensaje
codificador
No hay nuevos mensajes Menus Y Que Todos Los Formularios Creados ... david Controles/Librerías/Componentes 5 Jueves, 17 Octobre 2019, 21:24 Ver último mensaje
gambafeliz
 

Publicar nuevo tema  Responder al tema  Página 2 de 2
Ir a la página Anterior  1, 2

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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
No puede descargar archivos
No puede publicar eventos en el calendario