Ventana de JDialog Flota muy feo

Iniciado por soy_nicanor, 1 Mayo 2015, 08:28 AM

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

soy_nicanor

Estoy abriendo JDialog de JFrame Hasta aqui Todo bien.

Código (java) [Seleccionar]
Venta nuevo=new Venta(new javax.swing.JDialog(), true);
       nuevo.setVisible(true);


El problema es cuando Comienzo a Navegar El Jdialog comienza a flotar.

Jdialog no quiero que flote si no que este junto con JFrame


PabloPbl

¿A que te refieres con "flotar"? ¿Quieres que el JDialog este al lado de JFrame y no sobrepuesto?


PabloPbl

Pues obtiene las coordenadas del JFrame y sumale el tamaño del mismo para donde lo quieras poner.

Obtengo las coordenadas y le sumo el tamaño de ancho del JFrame:
Código (java) [Seleccionar]
dialog.setBounds(frame.getX()+frame.getWidth(), frame.getY(), 200, 200);

Pues con ese linea, harás que tu JDialog se vea al lado del JFrame.

Saludos!

soy_nicanor

No me funciona, me explico otra vez creo que no me entendieron.

Estoy abriendo JDialoj así desde (Jframe y panel de escritorio), Hasta ahí todo bien.



Código (java) [Seleccionar]

Venta nuevo=new Venta(new javax.swing.JDialog(), true);
       escitorio.jLabel2.setText(jLabel7.getText());
       nuevo.setVisible(true);


El problema es cuando salgo del sistema a navegar en navegadores u otros sistemas y cuando regreso solo me muestra la ventana Venta.



Quiero que muestre ventana Venta Pegado a (Jframe y panel de escritorio), como en la primera Imagen.

PabloPbl

#5
Eso te pasa por que tienes que indicar la ventana padre del JDialog y hacerla modal.

Algo así:

Suponiendo que la clase en donde instancias un JDialog es heredada por un JFrame
Código (java) [Seleccionar]

JDialog dialog = new JDialog(this, true);


El primer parámetro indicamos la ventana padre, que sera la misma clase, por que es una ventana JFrame, y el segundo que sera modal, osea que no se podrá acceder a la ventana padre cuando esta activa la ventana hija, que es el JDialog.