Java 在BorderLayout管理器中调整JPanel的大小

Java 在BorderLayout管理器中调整JPanel的大小,java,jframe,jpanel,Java,Jframe,Jpanel,我正在开发一个GUI。我使用BoderLayout manager作为我的JFrame。我在框架的北部区域添加了一个JPanel。问题是theJPanel没有采用我为高度指定的尺寸。它很小。有没有办法调整JPanel的大小 以下是全部源代码: public class JPanelDemo { JFrame frame; JPanel panel; GridBagConstraints cons = new GridBagConstraints(); JPanelDemo() { c

我正在开发一个GUI。我使用BoderLayout manager作为我的JFrame。我在框架的北部区域添加了一个JPanel。问题是theJPanel没有采用我为高度指定的尺寸。它很小。有没有办法调整JPanel的大小

以下是全部源代码:

public class JPanelDemo {

JFrame frame;
JPanel panel;
GridBagConstraints cons = new GridBagConstraints();

JPanelDemo() {
    createFrame();
}

public void createFrame() {
    //create the frame

    frame = new JFrame("GUI Sample");
    frame.setSize(new Dimension(750, 300));
    frame.setMaximumSize(new Dimension(2147483647, 2147483647));
    frame.setVisible(true);
//create the panel

    panel = new JPanel();
    panel.setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED, Color.yellow, Color.black));
    panel.setCursor(Cursor.getDefaultCursor());
    panel.setMaximumSize(new Dimension(32767, 32767));
    panel.setSize(new Dimension(732, 146));

    BorderLayout layout= new BorderLayout();
    layout.setHgap(3);
    layout.setVgap(10);

    frame.setLayout(layout);
    frame.add(panel,"North");
    frame.add(new JButton("button"));
}

public static void main(String[] args) {

    JPanelDemo jpd = new JPanelDemo();
}
}

不要键入“North”,请尝试

北边

边界布局。第一条线


另外,我认为如果使用
setPreferredSize

好的,下面是调整面板大小的代码:'panel.setMaximumSize(新尺寸(32767,32767));面板设置尺寸(新尺寸(732146));'是的,我这样做了,但是没有改变面板的大小,所以当你添加面板时,高度还是比它应该的小?