Foros del Web » Programación para mayores de 30 ;) » Java »

Posicionar un JDialog dentro de un Jframe

Estas en el tema de Posicionar un JDialog dentro de un Jframe en el foro de Java en Foros del Web. Hola! Tengo un JFrame principal que me llama unos Jdialogs, el Jframe no cubre toda la pantalla. Lo que quiero lograr es que al abrir ...
  #1 (permalink)  
Antiguo 04/09/2012, 12:24
Avatar de scorpion3d  
Fecha de Ingreso: mayo-2011
Mensajes: 92
Antigüedad: 12 años, 11 meses
Puntos: 19
Pregunta Posicionar un JDialog dentro de un Jframe

Hola!

Tengo un JFrame principal que me llama unos Jdialogs, el Jframe no cubre toda la pantalla.

Lo que quiero lograr es que al abrir un JDialog, este se posicione en una posicion deseada dentro del JFrame.

"Por ejemplo en la parte inferior derecha del JFrame" (No de la pantalla)

He logrado posicionarlos en el centro del JFrame con "SetLocationRelativeTo(JFrame)" pero no es lo que realmente quiero.

Alguien sabe como hacerlo o ya lo ha hecho antes?

Un saludo!
__________________
www.elias.com.sv
  #2 (permalink)  
Antiguo 04/09/2012, 19:03
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Posicionar un JDialog dentro de un Jframe

getLocationOnScreen(); // te da el x y del JFrame
sumando la HEIGHT + Y = tenés el punto inferior del frame
ahora tenés que tomar el HEIGHT del JDialog que queres posicionar y lo restas con (Y + height) del JFrame y listo.. esto hará que la parte inferior de ambos (JFRame y JDialog ) terminen igualmente posicionados.
x sería el mismo para ambos

Nota: un poco de ejes cartesianos, ciclo básico escolar. y sobre todo una de las cosas interesantes de esta profesión, resolver problemas.

PD: bastante atípica la ubicación que querés realizar, por algo existe el método que ya conocés, setLocationRelationTo; diría que es un estándar que se desplieguen las nuevas ventanas "modales" en ese orden.
__________________
BadProgrammerException!

Última edición por FiruzzZ; 04/09/2012 a las 19:21
  #3 (permalink)  
Antiguo 05/09/2012, 09:11
Avatar de scorpion3d  
Fecha de Ingreso: mayo-2011
Mensajes: 92
Antigüedad: 12 años, 11 meses
Puntos: 19
Respuesta: Posicionar un JDialog dentro de un Jframe

Vale gracias por el dato voy a probar, te aviso como me va
__________________
www.elias.com.sv
  #4 (permalink)  
Antiguo 05/09/2012, 11:44
 
Fecha de Ingreso: febrero-2012
Mensajes: 136
Antigüedad: 12 años, 2 meses
Puntos: 8
Respuesta: Posicionar un JDialog dentro de un Jframe

Tio lo que haces esto por ejemplo

en esta parte que te pongo ,llamo a mi dialogo en donde se envia la ventana padre en el cosntructor... como lo puedes ver

Código PHP:
 dlgFilInstancia=new DlgFilInstancia(vistatrue);    
                       
dlgFilInstancia.setVisible(true); 
y lo que tienes que hacer en el constructo de tu dialog usar setLocalationRelative(parent) .. en donde el parent es el parametro vista que envias al crear tu objeto diagolo

Código PHP:
  setLocationRelativeTo(parent); 
Ese parámetro puede ser cualquier componente ... de tu vista principal ... pon un label en la posición que quieres q salga y lo pasas como parámetro al dialogo

Espero que te sirva

Última edición por AdvKael; 05/09/2012 a las 13:19
  #5 (permalink)  
Antiguo 05/09/2012, 13:28
Avatar de scorpion3d  
Fecha de Ingreso: mayo-2011
Mensajes: 92
Antigüedad: 12 años, 11 meses
Puntos: 19
Respuesta: Posicionar un JDialog dentro de un Jframe

Cita:
Iniciado por AdvKael Ver Mensaje
Tio lo que haces esto por ejemplo

en esta parte que te pongo ,llamo a mi dialogo en donde se envia la ventana padre en el cosntructor... como lo puedes ver

Código PHP:
 dlgFilInstancia=new DlgFilInstancia(vistatrue);    
                       
dlgFilInstancia.setVisible(true); 
y lo que tienes que hacer en el constructo de tu dialog usar setLocalationRelative(parent) .. en donde el parent es el parametro vista que envias al crear tu objeto diagolo

Código PHP:
  setLocationRelativeTo(parent); 
Ese parámetro puede ser cualquier componente ... de tu vista principal ... pon un label en la posición que quieres q salga y lo pasas como parámetro al dialogo

Espero que te sirva
Muy interesante! voy a probar en cuanto llegue a casa
__________________
www.elias.com.sv
  #6 (permalink)  
Antiguo 08/09/2012, 16:16
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Posicionar un JDialog dentro de un Jframe

Cita:
Iniciado por AdvKael Ver Mensaje
Código PHP:
  setLocationRelativeTo(parent); 
Esto lo va coloca SOBRE el componente, no lo va alinear sobre el margen inferior derecho. Si el JDialog del que estamos hablando es medio tamaño (300x400 aprox.), y supongamos que el JFrame también el borde inferior derecha de pantalla (porque ahí se le dio al usuario moverlo), este JDialog no va ser visible o al menos va aparecer muy molestamente oculto.
Pero bue.. no se cual es la finalidad de ponerlo donde scorpion3d pretende.
__________________
BadProgrammerException!

Etiquetas: jdialog, jframe
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:08.