2012-03-29 3 views
3

どのボディでも、JFrameをMacに配置する方法を教えてください。 OS X?私のフレームが下のままである、上記のMAC OSX上のウィンドウの中央に位置するJFrame

this.setLocationRelativeto(null); 

this.setLocationRelativeto(this); 
this.setLocationRelativeto(getRootPane()); 

..and

final Toolkit toolkit = Toolkit.getDefaultToolkit(); 
    final Dimension screenSize = toolkit.getScreenSize(); 
    final int x = (screenSize.width - this.getWidth())/2; 
    final int y = (screenSize.height - this.getHeight())/2; 
    this.setLocation(x, y); 

なしに働いていないとMacのドックの後ろに隠れて:

は、私が試してみました。

+1

は、[?JavaでJFrameの位置を設定するためのベストプラクティスは何ですか](http://stackoverflow.com/a/7143398/418556)&(HTTP [最良の位置は、GUIのスイング方法]も参照してください。 /stackoverflow.com/a/7778332/418556)。これらの答えのどちらも画面上にGUIのセンタリングを伴わないことに注意してください。より良い選択肢があります。 –

答えて

8

フレームをパックした後(フレームのサイズを計算する)、ロケーションを設定する必要があります。 その後、それを表示する必要があります(デフォルトでは非表示になっています)。 /:

pack(); 
setLocationRelativeTo(null); 
setVisible(true); 
関連する問題