Como definir uma janela para apecer centralizada ? (como pego o tamanho da tela?) [RESOLVIDO]

deve ter uma forma facil de fazer isso… é que não conheço bem Swing…

pegar a largura e altura da tela… e dividir por 2 cada uma… e subtrair a largura e altura da minha janela, tambem dividida por 2… porem não sei como pegar o tamanho da tela…

Oi,

Se for um Frame utilize para centralizar a janela:

setLocationRelative(null);

E para pegar o tamanho da janela:

getSize() // Retorna a dimensão de sua janela

Tchauzin!

Só complementando a Lina:

Para pegar largura e altura utilize os métodos getHeight() e getWidth() respectivamente.

Além de faze como a lina falou para centralizar você também pode fazer setLocation(posX, posY).

Eu não gosto muito do setLocationRelative(null); que a lina mencionou… pode ser implicância minha, mas parece que ele não vai bem no centro da tela sempre!

Uso o código:

private void locateOnScreen() {
	final Dimension paneSize = this.getSize();
	final Dimension screenSize = this.getToolkit().getScreenSize();
	this.setLocation((screenSize.width - paneSize.width) / 2,
			(screenSize.height - paneSize.height) / 2);
}

[quote=MarceloS]Eu não gosto muito do setLocationRelative(null); que a lina mencionou… pode ser implicância minha, mas parece que ele não vai bem no centro da tela sempre!

Uso o código:…[/quote]

isso!! era essa solução que queria… getToolkit().getScreenSize() era o q faltava ^^ … vlw

fiz essa pequena classe utilitaria ^^

[code]import java.awt.Component;
import java.awt.Dimension;

public class LocateOnScreen {
public static void centerOnScreen(Component c) {
final Dimension paneSize = c.getSize();
final Dimension screenSize = c.getToolkit().getScreenSize();
c.setLocation((screenSize.width - paneSize.width) / 2,
(screenSize.height - paneSize.height) / 2);
}
}[/code]