和Toolkit.getDefaultToolkit().getScreenSize()
我得到了屏幕尺寸。
但是通常这不是我自己程序的可用大小,因为在Mac上顶部和底部都有一个图标栏。 Windows还具有一个图标栏。那么,如何获得真正的可用空间?
最佳答案
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle bounds = ge.getMaximumWindowBounds();
现在,您将拥有与平台无关的边界,而不依赖于平台的桌面装饰。我没有Mac,所以我只验证了它可以在WinXP/JDK6上运行。
请注意,如果您自动隐藏任务栏,则边界不包括任务栏,这是正确的。