java - 我如何获得真正可用的分辨率

标签 java swing window size

Toolkit.getDefaultToolkit().getScreenSize()

我得到屏幕尺寸。

但这通常不是我自己程序的可用大小,因为在 Mac 上,顶部有一个菜单栏,底部有一个图标栏。 Windows 也有一个图标栏。那么如何获得真正的可用空间呢?

最佳答案

来自 Java forum :

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
Rectangle bounds = ge.getMaximumWindowBounds();

现在你有了边界,没有依赖于平台的桌面装饰。我身边没有 Mac,所以我只验证了它可以在 WinXP/JDK6 上运行。

请注意,如果您自动隐藏任务栏,则边界不包括任务栏,这是正确的。

关于java - 我如何获得真正可用的分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3727589/

相关文章:

java - 为 ssl 身份验证编写 java 客户端

java - 我可以以某种方式增加 USB 端点的大小吗?

java - JButton已添加,但不可见

java - Java 中的构造函数覆盖

java - 如何在Gradle useTestNG中使用testng参数

java - 将项目添加到 Java ComboBox 时不要调用 ItemListener

java - 执行的操作出错?

c - 使用 WinMain() 和 WindowProc() 建立窗口后,在哪里添加实际程序? (C++)

c++ - NCurses 中有获取窗口位置的函数吗?

java - Vaadin 使用监听器在 Web 浏览器中打开新选项卡