Java Swing:设置JFrame内容区域大小
我正在尝试制作一个JFrame,其可用内容区域正好为500x500。如果我这样做Java Swing:设置JFrame内容区域大小,java,swing,jframe,Java,Swing,Jframe,我正在尝试制作一个JFrame,其可用内容区域正好为500x500。如果我这样做 public MyFrame() { super("Hello, world!"); setSize(500,500); } 。。。我得到了一个完整大小为500x500的窗口,包括标题栏等,我确实需要一个大小类似504x520的窗口来说明窗口边框和标题栏。我如何才能做到这一点?您可以尝试以下几种方法: 1-黑客: public MyFrame(){ JFrame temp = new JFram
public MyFrame() {
super("Hello, world!");
setSize(500,500);
}
。。。我得到了一个完整大小为500x500的窗口,包括标题栏等,我确实需要一个大小类似504x520的窗口来说明窗口边框和标题栏。我如何才能做到这一点?您可以尝试以下几种方法: 1-黑客:
public MyFrame(){
JFrame temp = new JFrame;
temp.pack();
Insets insets = temp.getInsets();
temp = null;
this.setSize(new Dimension(insets.left + insets.right + 500,
insets.top + insets.bottom + 500));
this.setVisible(true);
this.setResizable(false);
}
2-或
将JPanel添加到框架的内容窗格中,然后
只需设置首选/最小尺寸
从JPanel到500X500的调用包()
- 2-更便于携带
- 没关系,我想出来了:
public MyFrame() {
super("Hello, world!");
myJPanel.setPreferredSize(new Dimension(500,500));
add(myJPanel);
pack();
}
只需使用:
public MyFrame() {
this.getContentPane().setPreferredSize(new Dimension(500, 500));
this.pack();
}
如果您只想设置帧的大小,就不需要JPanel了。在Java 5中,不需要另一个面板就可以做到这一点。看见