java - Comment définir JFrame pour apparaître centré, indépendamment de la résolution du moniteur?




6 Answers

Je l'ai toujours fait de cette façon:

Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);

où c'est le JFrame impliqué.

Lorsque je travaille avec Java, j'ai du mal à positionner ma fenêtre principale au centre de l'écran lorsque je lance l'application.

Est-ce que je peux faire ça? Il ne doit pas être centré verticalement, l'alignement horizontal est l'objectif le plus important pour moi. Mais l'alignement vertical est également le bienvenu.




Vous pouvez appeler setLocationRelativeTo(null) pour centrer la fenêtre. Assurez-vous de mettre ceci avant JFrame.setVisible(true)




Aussi simple que cela ...

setSize(220, 400);
setLocationRelativeTo(null);  

ou si vous utilisez un cadre, réglez le cadre sur

frame.setSize(220, 400);
frame.setLocationRelativeTo(null);  

Pour plus de précision, à partir des docs :

Si le composant est nul ou si la configuration graphique associée à ce composant est nulle, la fenêtre est placée au centre de l'écran.




J'utilise NetBeans IDE 7.3 et voici comment je vais centraliser mon JFrame. Assurez-vous de cliquer sur le panneau JFrame et d'aller dans votre barre de propriétés JFrame, cliquez sur la barre de code et sélectionnez la case à cocher Generate Center.




Si vous utilisez NetBeans, cliquez simplement sur le cadre en mode Création, puis sur l'onglet Code de ses propriétés. Ensuite, cochez 'Generate Center'. Cela fera le travail.




Vous pouvez utiliser cette méthode, qui permet au JFrame d'être centré et plein écran en même temps.

yourframe.setExtendedState(JFrame.MAXIMIZED_BOTH);



Related

java swing jframe position