【发布时间】:2019-04-07 16:07:30
【问题描述】:
好的,所以我几乎整天都在尝试为此寻找答案,但似乎找不到任何答案。 :/
使用 JFrame,我一直在尝试将窗口设置为 1920x1080 分辨率,但是当我尝试这样做时,它似乎将整个屏幕用作窗口,有点像我的屏幕分辨率是 1920x1080 但它是 3840x2160,这是为什么呢?当我运行另一个具有 1920x1080 分辨率窗口的应用程序时,它的大小似乎不一样。 (它更小)
当前代码:
JFrame frame = new JFrame("Test");
GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
int width = gd.getDisplayMode().getWidth();
int height = gd.getDisplayMode().getHeight();
frame.setSize(width, height);
System.out.println(width+" "+height);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setVisible(true);
这个输出是一个窗口,它覆盖了我的屏幕,但在某些部分有点偏离,然后在控制台中显示3840 2160。如果我更改frame.setSize(width, height);
从当前到frame.setSize(1920, 1080); 它仍然使窗口大小相同。由于某种原因,我认为最大值略低于 1920x1080。 :/ 这里有什么想法吗?
编辑:似乎使用frame.setSize(Toolkit.getDefaultToolkit().getScreenSize()); 使窗口大小为 1536x864 而不是 3840x2160,将其设置为高于 1536x864 没有区别,它会说尺寸更大但我看不出任何区别,它涵盖了反正屏幕。
【问题讨论】: