我JFrame用来为桌面应用程序创建GUI.我使用此代码根据平台屏幕的分辨率设置的GUI大小.
this.setSize(this.getToolkit().getScreenSize());
Run Code Online (Sandbox Code Playgroud)
问题是当我运行应用程序时,GUI覆盖了所有屏幕.Windows任务栏也隐藏在GUI后面.
我希望无论任务栏的大小如何,任务栏都应该在所有条件下都可见.我如何实现这一目标?
我需要有一个未修饰的JFrame(setUndecorated(true)),需要全屏显示,而不与任务栏重叠.
我尝试了以下解决方案.
调用setExtendedState(MAXIMIZED_BOTH).
尝试使用JFrame.setExtendedState(MAXIMIZED_BOTH)与未修饰帧一起工作的下述解决方案?
GraphicsConfiguration config = aFrame.getGraphicsConfiguration();
Rectangle usableBounds = SunGraphicsEnvironment.getUsableBounds(config.getDevice());
aFrame.setBounds(0, 0, usableBounds.width, usableBounds.height);
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.
我想到了一个设计.但不确定其可行性.我可以使用setBounds().但是,当调整任务栏或重新定位任务栏时,我需要通知我的框架.有办法吗?