JFrame.setDefaultLookAndFeelDecorated(true);
-
02-07-2019 - |
質問
JavaでsetDefaultLookAndFeelDecorated(true)メソッドを使用する場合 フレームを最大化すると、フレームがフルスクリーンで表示されるのはなぜですか? この方法でフルスクリーンモードを無効にするにはどうすればよいですか?
解決
setDefaultLookAndFeelDecorated
をtrueに設定すると、装飾がルックアンドフィールによって処理されます。これは、WindowsとMacの両方のシステムのルックアンドフィール(現在Linuxは手元にない)が、ネイティブウィンドウの境界線を保持することを意味します。 Windowsのタスクバーを避けてください。
Cross Platformのルックアンドフィール(Windowsのデフォルトであるk.a. Metal)を使用すると、Windowsバージョンが画面全体を引き継ぎ、フルスクリーンウィンドウのように見えます。 Macでは、OSは独自のタイトルバーの提供を拒否し、Macネイティブウィンドウに完全なMetalフレーム(タイトルバーを含む)を描画します。
つまり、タスクバーが確実に尊重されるようにするには、WindowsでWindowsシステムのルックアンドフィールを使用します。次のようなものを使用して設定できます
UIManager.setLookAndFeel((LookAndFeel) Class.forName(UIManager.getCrossPlatformLookAndFeelClassName()).newInstance());
他のヒント
JFrameを最大化できないようにするには、.setResizable(false)を呼び出します。その上。
所属していません StackOverflow