Pessoal estou utilizando Swing e construindo um jForm para a tela do meu app. Como ele não irá ocupar toda a área da tela do computador tem como ao carregar a minha aplicação (depois de compilada) ele seja iniciada de forma centralizada, pois sempre ela é inicializada no canto esquerdo superior da tela.
JFrame neh ?
import java.awt.Dimension;
import java.awt.Point;
import java.awt.Toolkit;
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = getSize();
setLocation(new Point((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2));
Boa Sorte
Dessa forma que vc postou a centralização ocorre somente na horizontal, na vertical ele fica no topo e com a barra de título fica fora da tela.
Tem como centralizar também na vertical?
private void center(JFrame frame) {
Dimension paneSize = frame.getSize();
Dimension screenSize = frame.getToolkit().getScreenSize();
frame.setLocation(
(screenSize.width - paneSize.width) / 2,
(screenSize.height - paneSize.height) / 2);
}