Java - Creacion de JInternalFrame

 
Vista:

Creacion de JInternalFrame

Publicado por tzener (5 intervenciones) el 07/02/2005 22:53:33
Hoa buen dia.... Tengo un sistema hecho desde NetBeans, el problema es que ahora se me ocurrió montarlo en una pantalla principal y con ventanas hijas provenientes de esta(JInternalFrame), el problema es que tendria que cambiar todas mis pantallas a JInternalFrame. Alguien sabe como crear un objeto JInternalFrame a partir de un JFrame ya hecho que le pasemos como parámetro? gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Creacion de JInternalFrame

Publicado por chuidiang (532 intervenciones) el 08/02/2005 09:25:06
Hay una forma un poco rara, a ver si te sirve.

Cuando te pasen en JFrame, tu haces un new JInternalFrame. Al JFrame miras qué contenedor/componente tiene dentro y se lo quitas y lo pones en el JInternalFrame. Luego el JFrame puedes ocultarlo.

No sé si te vale, es una idea para probar.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Solución

Publicado por tzener (5 intervenciones) el 08/02/2005 15:58:57
Pues si, efectivamente es una solución muy buena y ya la probé.. muchas gracias.. el resultado final es el siguiente

A mi pantalla principal le agrego las siguientes lineas
JDesktopPane myDesktop = new JDesktopPane();
myFrame.setContentPane(myDesktop);

para crear el escritorio que contendra mis InternalsFrames. Posteriormente en el metodo que mandaba llamar a los frame y los mostraba pongo lo siguiente

JInternalFrame f = createFrame("Titulo", FrameAMostrar);
f.setLocation(10,10);
myDesktop.add(f);

y por ultimo el metodo createFrame queda de la siguiente forma

private static JInternalFrame createFrame(String t, JFrame frame) {
JInternalFrame f = new JInternalFrame(t);
f.setResizable(true);
f.setClosable(true);
f.setMaximizable(true);
f.setIconifiable(true);
f.setSize(frame.getSize());
f.setVisible(true);
for (int i=0;i<=frame.getComponentCount()-1;i++)
{
Component comp = (Component)frame.getComponent(i);
f.getContentPane().add(comp);
}
return f;
}

lo que se hace es un ciclo sobre los componentes del frame y uno a uno se van agregando al JFrame....... y LISTO !!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Solución

Publicado por chuidiang (532 intervenciones) el 09/02/2005 08:30:00
Hola:

Un comentario nada más. Yo en su momento tuve problemas como el tuyo, de cambiar un Applet por JFrame, rehacer código ...

Al final, y como costumbre, ahora hago que todo mi codigo esté en JPanel. Luego, en algún sitio, meto estos JPanel en el lugar que me interese (JApplet, JFrame, JDialog, JInternalFrame, etc, etc).

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar