2010-05-09 10 views
8

Quiero establecer el tamaño de un JFrame de manera que el panel de contenido tenga el tamaño deseado. JFrame.setSize() no tiene en cuenta las decoraciones de la ventana, por lo que el panel de contenido es un poco demasiado pequeño. El tamaño de las decoraciones de las ventanas depende de la plataforma y el tema, por lo que es una mala noticia tratar de dar cuenta de manera manual.Configuración del tamaño de un panel de contenido (dentro de un JFrame)

JFrame.getContentPane(). SetSize() falla porque está administrado.

Ideas?

Gracias!

+0

Esta pregunta puede ayudar: http://stackoverflow.com/questions/2451252/swing-set-jframe-content- área de tamaño – Ash

Respuesta

17

En Java 5 y más tarde este es el método más fácil:

JFrame frame = new JFrame("Content Pane Size Example"); 
frame.getContentPane().setPreferredSize(new Dimension(400, 300)); 
frame.pack(); 
frame.setVisible(true); 

Como siempre lo anterior debe ser ejecutado en el EDT.

0

Si quieren hacerlo por su cuenta a continuación, en el tipo de marco:

this.setLayour(null); 
this.pack(); 
Insets insets = this.getInsets(); 
this.setBounds(0,0, insets.left + width + insets.right, insets.top + height + insets.bottom); 
this.setLocationRelativeTo(null); 
Cuestiones relacionadas