Autor Tema: Ayuda con Swing [Jframe & Jpanel]  (Leído 6247 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado NoeL

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 3257
    • SvCommunity
Ayuda con Swing [Jframe & Jpanel]
« : febrero 16, 2010, 04:16:46 pm »
Bien estoy tratando de hacer una aplicancion sencilla en Swing pero no estoy muy familiarizado con este tipo de tecnologia, la cuestion es la siguiente:

Tengo un Jframe que posee un menu con varios elementos de Menu desde donde deseo llamar unos Jpanel, mi pregunta es sencilla pero de solucion compleja como hago para que cuando yo elijo uno de los elementos de ese menu me elimine el Jpanel que se encuentra abierto en ese momento y me muestre el que se acaba de seleccionar.

-Por favor tomar en cuenta que NO SE como se el nombre el Jpanel que esta activado en ese momento por lo que queda descartado el setVisible(false).

-Si es posible que me muestren un ejemplo seria fabuloso.

Gracias de antemano :)

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda con Swing [Jframe & Jpanel]
« Respuesta #1 : febrero 16, 2010, 10:57:33 pm »
y usar una flag para identificar el jpanel activo no te furula? una variable bool asi como activo=true/false llamas un if que le pregunte a los jpanel cual esta activo y que lo esconda y que cambie el estado del que vas a activar?

Desconectado NoeL

  • Administrator
  • The Communiter-
  • *
  • Mensajes: 3257
    • SvCommunity
Re:Ayuda con Swing [Jframe & Jpanel]
« Respuesta #2 : febrero 17, 2010, 08:48:51 am »
mmmm, ya lo habia considerado sin embargo pense que existia algun metodo que me permitiera eliminar todo lo que estuviera dentro del Jframe y dejarlo listo para la apertura de otro Jpanel....

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14587
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda con Swing [Jframe & Jpanel]
« Respuesta #3 : febrero 17, 2010, 09:43:06 am »
mmmm, ya lo habia considerado sin embargo pense que existia algun metodo que me permitiera eliminar todo lo que estuviera dentro del Jframe y dejarlo listo para la apertura de otro Jpanel....
  para eliminar el jpanel activo correctamente haces un setVisible(false) y despues un .dispose() eso dejaria libre el contenedor (jframe) para el nuevo jpanel. en realidad podes hacer el .dispose() sin necesidad del setVisble(false), pero por costumbre se hace. solo asegurate que si tenes referencias a la ventana los pongas a null cuando hagas el dispose()

si podes usar las funciones focus de la clase panel para ubicar el jpanel activo, pero corres el riesgo de que si tenes elementos afuera del jpanel, que el foco este en ellos y no dentro del panel q queres eliminar (aunque de hecho este visible en el momento).
« Última Modificación: febrero 17, 2010, 10:04:52 am por g00mba »