2

JavaでJFrameを明確に作成し、画面上でできるだけ大きくなるようにサイズを設定しました。たとえば、Toolkit.getDefaultToolkit().getScreenSize() を使用して JFrame のサイズを設定しますが、(windows と mac の) メニュー バー/ドックなどのために、画面に合わせてサイズ変更されます。JFrame のデフォルトであるこの新しい次元を取得するにはどうすればよいでしょうか?

4

2 に答える 2

3

JFrameを最大化するには、最大化された両方を拡張状態に追加します。

frame.setExtendedState(frame.getExtendedState() | JFrame.MAXIMIZED_BOTH);

Windows XPでは、この最大化はWindowsステータスバーを考慮に入れます。ただし、水平方向の計算は数ピクセルずれており、すべての側面の境界線が表示されるわけではありません。

私はこれをWindows7やUnixで試したことがありません。

また、ユーザーがサイズの最大化/復元ボタン(Windows JPanelの中​​央のボタン)をクリックした場合に備えて、JFrameサイズを設定する必要があります。

于 2012-09-07T14:30:17.857 に答える
3

あなたの質問を正しく理解しているかどうかわかりません。ただし、画面のサイズからメニューバー/タスクバーを引いたサイズを取得したい場合は、この回答が役立ちます。

JFrame の新しいサイズを取得するだけの場合は、次を使用します。

yourFrame.getSize();
于 2012-09-07T14:05:43.517 に答える