Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > jframe dentro de un jdialog

Saludos.

Disculpen si no pego codigo, la pregunta es simple, ya yo tengo armado mi jframe, ¿como puedo mostrar este dentro de un jdialog?

octubre 22, 2011 | Unregistered Commenterresalpa

No sé si te he entendido bien. ¿Quieres meter un JFrame dentro de un JDialog?.

octubre 22, 2011 | Unregistered Commenterchoces

si

octubre 22, 2011 | Unregistered Commenterresalpa

Hay algo que no termino de entender: ¿Cuál es el motivo?. Los JDialog están diseñados para facilitar la entrada de datos de usuario, sobre todo mediante la clase más especializada JOptionPane.
Normalmente JDialog se usa para crear "diálogos" a medida. Pero ninguna de ambas está diseñada para renderizar un JFrame. Nunca lo he visto hasta ahora, y ni siquiera sé, con toda certeza, si es posible siquiera.
Swing es muy flexible, extensible y configurable; pero no creo que lo sea hasta ese punto.
Tal vez, si explicases con algún detalle lo que pretendes conseguir, se podría encontrar una manera de realizarlo, sin "forzar" Swing de la manera que planteas.

octubre 22, 2011 | Unregistered Commenterchoces

Que yo sepa no se puede. Puedes transformar tu JFrame en un JPanel sin muchos cambios y luego lo puedes usar en todos lados.

octubre 22, 2011 | Registered Commenterjordibr7

Como "la curiosidad mató al gato", hice una prueba, similar a añadir un JTextFiled o un JComboBox a un JOptionPane, pero en esta ocasión con un JFrame, y el resultado fue:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: adding a window to a container

Es una suposición, pero creo que con un JDialog sucedería lo mismo.

octubre 22, 2011 | Unregistered Commenterchoces

Hola, es que tengo varios jframes donde uno de ellos es el principal o padre y los demás hijos, pero quiero que cuando muestre algún jframe hijo no se pueda manipular al padre y el hijo siempre este al frente, espero haberme dado a entender, es lo que normalmente sucede cuando uso un jdialog

octubre 22, 2011 | Unregistered Commenterresalpa

Puedes probar estos dos métodos que se pueden llamar desde un JFrame:
setAlwaysOnTop(true);
toFront();

y el toBack(); para poner un Frame hacia atrás, cuando sea necesario.

No sé si solamente con ellos puedes resolver el problema.
De no ser así, habría la necesidad de utilizar el Focus Subsystem:

http://download.oracle.com/javase/tutorial/uiswing/misc/focus.html

lo que no es nada sencillo con tantos frames.

octubre 22, 2011 | Unregistered Commenterchoces

Gracias por sus aportes, me ha servido sus ayudas, aunque tengo otros problemita quiero resolverlo por mi mismo.

Haciendo un aparte, mis problemas son a raíz de no saber crear formularios con jTextField, Jbuttom, ect, usando un jdialog; si alguien tiene ejemplo que me sirvan de empujón le estaría agradecido.

octubre 22, 2011 | Unregistered Commenterresalpa

Hola, me replantee el problema tal como me sugiere jordibr7 y me funciono, pero no resulto lo que quería, pero voy a seguir intentando

AgregarDeportista agregarDeportista = new AgregarDeportista(id_evento);//mi jframe
JDialog jd = new JDialog();
jd.setContentPane(agregarDeportista.getContentPane());
jd.pack();
jd.setVisible(true);

octubre 22, 2011 | Unregistered Commenterresalpa

Tutorial sobre JDialog y JOptionPane:
http://download.oracle.com/javase/tutorial/uiswing/components/dialog.html
Ahí tienes todo lo que necesitas, ejemplos de uso incluídos.

octubre 22, 2011 | Unregistered Commenterchoces

Gracias a todos por sus aportes, enteramente agradecidos

octubre 23, 2011 | Unregistered Commenterresalpa