如何获得以像素为单位的屏幕分辨率(宽度 x 高度)?
我正在使用 JFrame 和 java swing 方法。
原文由 AndreDurao 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何获得以像素为单位的屏幕分辨率(宽度 x 高度)?
我正在使用 JFrame 和 java swing 方法。
原文由 AndreDurao 发布,翻译遵循 CC BY-SA 4.0 许可协议
此代码将枚举系统上的图形设备(如果安装了多个显示器),您可以使用该信息来确定显示器关联或自动放置(某些系统在应用程序运行时使用小型侧面显示器进行实时显示)背景,这样的显示器可以通过尺寸、屏幕颜色等来识别):
// Test if each monitor will support my app's window
// Iterate through each monitor and see what size each is
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
Dimension mySize = new Dimension(myWidth, myHeight);
Dimension maxSize = new Dimension(minRequiredWidth, minRequiredHeight);
for (int i = 0; i < gs.length; i++)
{
DisplayMode dm = gs[i].getDisplayMode();
if (dm.getWidth() > maxSize.getWidth() && dm.getHeight() > maxSize.getHeight())
{ // Update the max size found on this monitor
maxSize.setSize(dm.getWidth(), dm.getHeight());
}
// Do test if it will work here
}
原文由 Rick Hodgin 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.3k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
1 回答2.1k 阅读✓ 已解决
您可以使用
Toolkit.getScreenSize()
方法获取屏幕尺寸。在多显示器配置中,你应该使用这个:
如果你想获得 DPI 中的屏幕分辨率,你必须在 — 上使用
Toolkit
getScreenResolution()
方法。资源 :