为什么Java Fullscreen Exclusive Mode无法运行我的最大屏幕分辨率?

时间:2019-04-20 23:22:53

标签: java 2d fullscreen

我正在尝试使Java全屏独占模式在计算机上以1080p的分辨率运行,但是尺寸只有1536 x864。显示模式也设置为1920 x 1080。

GraphicsDevice device = GraphicsEnvironment
         .getLocalGraphicsEnvironment().getDefaultScreenDevice();
// device.getDisplayMode() returns 1920 x 1080 and some other stats
// device.getDefaultConfiguration().getBounds() returns 1536 x 864

我希望尝试将屏幕的分辨率设置为1920 x 1080,而不是1536 x864。是否有实际方法可以做到这一点?或者这是正常现象吗?

谢谢!

编辑:目前,我正在Windows上运行它

2 个答案:

答案 0 :(得分:0)

我不能说“为什么”选择了该模式,但是您要做的第一件事就是检查可用的模式...

DisplayMode modes[] = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDisplayModes();
for (DisplayMode mode : modes) {
    System.out.println(mode);
}

因此,在我的2017 MacBook Pro上,运行macOS Maojave(10.14)时,我得到...

2880x1800x32bpp@[Unknown refresh rate]
1440x900x32bpp@[Unknown refresh rate]
3360x2100x32bpp@[Unknown refresh rate]
2560x1600x32bpp@[Unknown refresh rate]
2048x1280x32bpp@[Unknown refresh rate]
1650x1050x32bpp@[Unknown refresh rate]
1280x800x32bpp@[Unknown refresh rate]
1152x720x32bpp@[Unknown refresh rate]
1024x768x32bpp@[Unknown refresh rate]
840x524x32bpp@[Unknown refresh rate]
800x600x32bpp@[Unknown refresh rate]
640x480x32bpp@[Unknown refresh rate]
1680x1050x32bpp@[Unknown refresh rate]

但是,正如您所看到的,此处不支持1080p :(,因此,如果我穿上鞋子,则需要查找较近的东西。可能是1650x1050或{{1} }

这对您有什么帮助?好了,一旦您确定了最适合自己的模式,并根据documentation,您就可以...... p

2048x1280

答案 1 :(得分:0)

花了一点时间,我意识到我没有回答问题。我最终弄清楚了,这个问题很可能是Java 11中的错误。当我恢复到Java 8开发环境(v221?)时,像素又恢复为1920 x 1080。