在 JFrame 中设置可见 space 的大小
Set the size of visible space in a JFrame
这个问题我遇到过好几次了,我终于尝试解决了,但是我找不到正确的解决方案。我有一个简单的 JFrame 程序。基本的 JFrame 代码如下所示:
JFrame frame = new JFrame("halp");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setResizable(false);
frame.setVisible(true);
这是我要完成的工作的图片:
如您所见,space 被顶栏和 window 的边框占据。解决此问题的一种方法是增加 window 的大小,但这一点也不整洁,而且并非每个系统都具有与 window.
相同的边框大小
我进行了研究并尝试了一些我在之前提出的问题中发现的事情:
frame.pack()
。这个方法只把window设置为最小尺寸,就好像我根本没有设置尺寸一样。
frame.getContentPane().setSize(500,500);
。 window 边框仍计入帧大小。
frame.setPreferredSize(new Dimension(500, 500));
和 JPanel.setPreferredSize(new Dimension(500, 500));
。框架进入最小尺寸,如 frame.pack()
.
我尝试结合这些方法,但似乎没有任何效果。
我错过了什么?我需要添加 JFrame 的另一个方面吗?是不是BlueJ的不兼容问题?
frame.getContentPane().setPreferredSize(new Dimension(500,500));
后跟
frame.pack();
应该可以解决您的问题。
这个问题我遇到过好几次了,我终于尝试解决了,但是我找不到正确的解决方案。我有一个简单的 JFrame 程序。基本的 JFrame 代码如下所示:
JFrame frame = new JFrame("halp");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500,500);
frame.setResizable(false);
frame.setVisible(true);
这是我要完成的工作的图片:
如您所见,space 被顶栏和 window 的边框占据。解决此问题的一种方法是增加 window 的大小,但这一点也不整洁,而且并非每个系统都具有与 window.
相同的边框大小我进行了研究并尝试了一些我在之前提出的问题中发现的事情:
frame.pack()
。这个方法只把window设置为最小尺寸,就好像我根本没有设置尺寸一样。frame.getContentPane().setSize(500,500);
。 window 边框仍计入帧大小。frame.setPreferredSize(new Dimension(500, 500));
和JPanel.setPreferredSize(new Dimension(500, 500));
。框架进入最小尺寸,如frame.pack()
.
我尝试结合这些方法,但似乎没有任何效果。
我错过了什么?我需要添加 JFrame 的另一个方面吗?是不是BlueJ的不兼容问题?
frame.getContentPane().setPreferredSize(new Dimension(500,500));
后跟
frame.pack();
应该可以解决您的问题。