Centrar panel

Alejandro
16 de Noviembre del 2005
Saludos compañeros, tengo una aplicacion con una clase que a su vez llama a otra clase, y esta ultima muestra solo un panel pequeño, xo se muestra en la esquina superior izquierda, y quiero que se muestre centrado en la pantalla, como si se tratase de un JDialog. Alguien me puede dar una idea d como lo puedo hacer ??? Gracias por adelantado.

rubece
16 de Noviembre del 2005
Hola, no sé si habrá una función que lo haga directamente pero se así funciona:
component.setSize(...,...); // Con el tamaño que sea pero antes que lo siguiente
Dimension noCentered = component.getSize();
Dimension screenSize = component.getToolkit().getScreenSize();
component.setLocation((int)(screenSize.getWidth()/2-noCentered.getWidth()/2),(int)(screenSize.getHeight()/2-noCentered.getHeight()/2));

Donde component es el componente que quieres centrar en la pantalla (por ejemplo, una ventana). Si quieres centrar un componente dentro de otro, habria que cambiar esta sentencia:

Dimension screenSize = component.getToolkit().getScreenSize();

por esta otra:

Dimension screenSize = component1.getSize();

Para centrar component dentro de component1 (un botón dentro de una ventana, por ejemplo). Bueno creo que no se me olvida nada. Pues eso que te vaya bien.