Evitar abrir la misma instancia de un JInternalFrame al mismo tiempo

Iniciado por KeyPy HH, 9 Junio 2012, 18:05 PM

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

KeyPy HH

Hola Gente,

Mi inquietud está en que yo estoy desarrollando un proyecto MDI en Java sobre una comercializadora, por lo cual tengo que registrar y crear archivos de clientes, productos, facturas, etc.. Yo tengo mi JDesktopPanel en el cual abro todos mis JInternalFrame's, pero lo que quiero evitar es que se abran dos instancias del mismo JInternalFrame. ¿Cómo así? Que si yo tengo la opción "agregaCliente" como item en un menú y abro su respectivo JInternalFrame, no me abra dos JInternalFrame's del mismo "agregaCliente"... No se cómo sería esa validación, Si me puedieran facilitar o explicar esa funcion para evitar dicha situacion se los agradecería!!!


Muchas Gracias a Todos!

1mpuls0

Hola.

No entiendo de que otra forma mostraría dos objetos del mismo tipo a menos de que el programador lo indique.
Tal vez puedes colocar algo de código para entender.

Saludos.
abc

gardoelhacker

hola puede hacer lo siguiente:

Usuario usuario = new Usuario();  //crear el nuevo formulario
boolean mostrar=true;

for (int a=0;a<jdesktop.getComponentCount();a++){     // verificar si es instancia de algun componente que ya este en el jdesktoppane
   if( usuario.getClass().isInstance( jdesktop.getComponent(a) )){
       System.out.println("es instancia, no se debe mostrar");
       mostrar=false;
   }else{
       System.out.println("no lo es, puede mostrarse");
   }
}
if(mostrar){ jdesktop.add(usuario); }

saludos.