私の質問は非常に単純だと思います...プログラムを実行するときにJavaフレームを中央に配置したいと思います。
私は次のコードを使用しました:
setLocationRelativeTo(null);
問題 :
これはフレームの左上隅で、フレーム全体ではなく中央に配置されます。どうすればこれを修正できますか?フルフレームを中央に配置しますか?
ご協力ありがとうございました!
setLocationRelativeTo(null);
...これはフレームの左上隅です...
フレームが自然なサイズになる前に、呼び出しが間違った時間に行われているようです。これを修正するには、この順序で実行します。
pack()
て、フレームに現在含まれているコンポーネントを表示するために必要な最小サイズにします。setLocationRelativeTo(null);
OTOH:それがあなたのコンピュータ上で実行されているあなたのプログラムであるなら、それで行きなさい。ただし、アプリを提供する必要がある場合。私のような他の人には、setLocationByPlatform(true)
(以下のWindowsデモ)の使用を検討してください。
あなたはこれを試すことができます。私の場合は機能しています。
Frame frame = new Frame("Centered Frame");
Dimension dimemsion = Toolkit.getDefaultToolkit().getScreenSize();
frame.setLocation(dimemsion.width/2-frame.getSize().width/2,
dimemsion.height/2-frame.getSize().height/2);
NetBeansを使用している場合は、「プラテーマネージャ」->「プロパティ」->「フォームサイズポリシー」に移動します。