Im不匹配Im在MacOS上使用Java。实际屏幕分辨率是2560x1600。但尺寸为1200x900或更高的JFrame不适合屏幕。实际JFrame大小与声明
JFrame frame = new JFrame();
frame.setBounds(0,0,1200,900);
frame.setLayout(null);
frame.setVisible(true);
此外,该:
JFrame frame = new JFrame();
frame.setBounds(0,0,3000,3000);
frame.setLayout(null);
frame.setVisible(true);
System.out.println(frame.getWidth() + "x" + frame.getHeight());
输出1280x773。为什么会发生这种情况以及如何处理?
编辑:有x2规模。可能是因为视网膜和操作系统配置。寻找改变这种规模的方法。
'frame.setBounds(0,0,1200,900);'这是第一个错误。不要猜测一个框架的大小。将它打包以获得理想大小,或者调用['Frame.setExtendedState](Frame.MAXIMIZED_BOTH)'](http://docs.oracle.com/javase/8/docs/api/java/awt/Frame.html #setExtendedState-int-)..这是第二个错误。 'frame.setLayout(null);'我不会理解为什么,因为我们几乎每天都在处理它。搜索[tag:null-layout-manager]了解详细信息。 –
另请参见[什么是XY问题?](http://meta.stackexchange.com/q/66377) –
frame.setExtendedState(Frame.MAXIMIZED_BOTH)使框架完全填充屏幕,但其大小仍为1280x773。 – LvlDeath