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

[SOLUCIONADO] Centrar jinternalframe

Estas en el tema de Centrar jinternalframe en el foro de Java en Foros del Web. Buenas, tengo una aplicación con java swing y quiero que al maximizar se centre el jinternalframe dentro del jframe, el problema es que al navegar ...
  #1 (permalink)  
Antiguo 20/03/2013, 04:27
 
Fecha de Ingreso: abril-2009
Mensajes: 63
Antigüedad: 15 años
Puntos: 0
Centrar jinternalframe

Buenas, tengo una aplicación con java swing y quiero que al maximizar se centre el jinternalframe dentro del jframe, el problema es que al navegar a otro jinternalframe cambio el setlocation pero no me modifica la localización por pantalla (si hago un print getlocation si que me muestra el cambio). Lo curioso es que si pongo un timer si que me lo mueve pero quiero que se vea nada más entrar en el jinternalframe y no que se vea como se mueve.

Este es el código que utilizo para centrar el jinternalframe:

Código PHP:
Dimension desktopSize vMenuMain.getSize();

         
Dimension jInternalFrameSize = new Dimension(1024,768);

         
vMenuMain.setBackground(Color.WHITE);
         
         
Point point=new Point((desktopSize.width jInternalFrameSize.width)/2, (desktopSize.heightjInternalFrameSize.height)/2);
         
         
vMenuMain.getContentPane().setLocation(point);
         
         
vMenuMain.getContentPane().setVisible(true);
         
vMenuMain.getContentPane().repaint(); 
vMenuMain es el jframe.

Edit: También he probado a ponerle la visibilidad al false antes del timer y cambiarlo a true después pero tampoco funciona.

Saludos!

Edit:

Ya lo resolví englobando todo lo que tenía en cada jinternalframe en un jpanel y añadiendo un método de escucha para saber cuando el usuario maximiza y minimiza la pantalla.

Saludos!

Última edición por KatonSP; 25/03/2013 a las 01:43 Razón: Resuelto

Etiquetas: 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 19:22.