elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Como puedo tener 1 ventana(o clase) global
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como puedo tener 1 ventana(o clase) global  (Leído 1,871 veces)
SrTrp


Desconectado Desconectado

Mensajes: 327


Script/C#


Ver Perfil
Como puedo tener 1 ventana(o clase) global
« en: 7 Marzo 2019, 06:27 am »

A lo que me refiero con una ventana global(que siempre este trabajando) es decir tengo un jframe que lo abro(en teoria no se abre la hago visible) con la clase principal de mi proyecto así:
Código
  1. Formprin frm = new Formprin();
  2.        frm.setVisible(true);
  3.  
pero quiero conservar ese objeto ya que al crearlo tengo varias variables globales.
Ahora en ese form tengo un boton que hace lo siguiente:
Código
  1. Form2 ft = new Form2 ();
  2.        ft.setVisible(true);
  3.        ft.setTitle("Abrio : "+this.contador+">");
  4.        this.contador++;
  5.        this.setVisible(false);
  6.  
aqui todo bien hago visible mi otro formulario y invisible el formulario principal ahora cuando lo cierro el otro formulario quiero que se vuelva visible el principal pero en teoria debería llevar el contador 1 pero no lo hace sigue en 0 pero esto lo se por que creo otro objeto, y aqui es a lo que va mi pregunta como podria hacer esto solo se me ocurre desechar cada vez el objeto y pasarme todos los datos de variable de un lado hacia otro..


En línea

rub'n


Desconectado Desconectado

Mensajes: 1.217


(e -> λ("live now")); tatuar -> λ("α");


Ver Perfil WWW
Re: Como puedo tener 1 ventana(o clase) global
« Respuesta #1 en: 7 Marzo 2019, 23:44 pm »

Mmmm, me suena a aun Simple Singleton (double checked locking) :P, logrando que la instancia del formulario que desees se mantenga durante toda la vida de la app

Código
  1.    private TuForm() {}
  2.    private static volatile TuForm instance;
  3.    public static TuForm getInstance() {
  4.        if(Objects.isNull(instance)) {
  5.            synchronized (TuForm.class) {
  6.                if(Objects.isNull(instance)) {
  7.                    instance = new TuForm();
  8.                }
  9.            }
  10.        }
  11.        return instance;
  12.    }
  13.  

Cuando instancies solo haz

Código
  1. final TuForm form = TuForm.getInstance();


« Última modificación: 9 Marzo 2019, 14:07 pm por rub'n » En línea

rubn0x52.com KNOWLEDGE  SHOULD BE FREE.
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Como abrir una "clase" en forma de Ventana? (vb.net)
.NET (C#, VB.NET, ASP)
Skeletron 1 2,318 Último mensaje 18 Mayo 2009, 07:01 am
por Skeletron
Como puedo jugar mu online en ventana?
Juegos y Consolas
jailant 1 6,756 Último mensaje 18 Octubre 2009, 11:44 am
por Ariath
Como puedo cambiar el texto de una ventana?
Programación General
andarion 6 3,446 Último mensaje 7 Septiembre 2010, 23:16 pm
por andarion
como puedo invocar correctamente una clase?
Java
Belial & Grimoire 5 3,434 Último mensaje 19 Marzo 2013, 15:53 pm
por ~ Yoya ~
javascript.como puedo cambiar una variable global en una funcion
Desarrollo Web
daryo 2 6,116 Último mensaje 13 Enero 2015, 19:26 pm
por MinusFour
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines