我正在开发一个GUI。我在我的JFrame中使用了BoderLayout管理器。我在Frame的North区域添加了一个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();
}
}
答案 0 :(得分:0)
而不是键入" North"尝试
BorderLayout.NORTH
或
BorderLayout.FIRST_LINE
除了你用来确保框架可以无限增长的hackish方式,我认为如果你使用setPreferredSize