JFrame.setDefaultLookAndFeelDecorated(真);
-
02-07-2019 - |
题
当我在Java中使用setDefaultLookAndFeelDecorated(true)方法时 当我最大化帧时,为什么Frame会出现FullScreen? 以及如何在此方法中取消FullScreen模式?
解决方案
将 setDefaultLookAndFeelDecorated
设置为true会导致装饰由外观处理;这意味着Windows和Mac上的系统外观(我现在没有Linux)保留了您期望它们的本机窗口的边界,例如远离Windows中的任务栏。
使用跨平台外观,a.k.a.Metal,这是Windows上的默认设置,Windows版本将接管整个屏幕,使其看起来像一个全屏窗口。在Mac上,操作系统拒绝泄露自己的标题栏,并在Mac原生窗口中绘制完整的金属框架(包括标题栏)。
因此,简而言之,如果您想确保任务栏得到尊重,请在Windows上使用Windows系统外观。您可以使用
之类的东西来设置它UIManager.setLookAndFeel((LookAndFeel) Class.forName(UIManager.getCrossPlatformLookAndFeelClassName()).newInstance());
其他提示
如果您不希望JFrame能够最大化,那么请调用.setResizable(false);在上面。
不隶属于 StackOverflow