好。我已经进口了所有东西,这部分是正确的。我不能得到的东西,我希望JPanel p2成为南方,但它不会移动到南方。在ECLIPSE工作,它没有出现任何错误。除了它不按我想要的方式工作。请帮助
public static void main(String[] args) {
JFrame frame = new JFrame("Title");
frame.setLayout(new BorderLayout());
JButton but1 = new JButton("Button 1");
JButton but2 = new JButton("Button 2");
JButton but3 = new JButton("Button 3");
JButton but4 = new JButton("Button 4");
JButton but5 = new JButton("Button 5");
JButton but6 = new JButton("Button 6");
JButton but7 = new JButton("Button 7");
JButton but8 = new JButton("Button 8");
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
p1.add(but1);
p1.add(but2);
p1.add(but3);
p1.add(but4);
p2.add(but5);
p2.add(but6);
p2.add(but7);
p2.add(but8);
frame.add(p1,BorderLayout.WEST);
frame.add(p2,BorderLayout.SOUTH);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(640, 480);
frame.setLayout(new FlowLayout());
frame.setResizable(false);
}
}
答案 0 :(得分:0)
问题是您将JFrame的布局更改为FlowLayout。因此,您不能再使用JFrame的(默认)BorderLayout,并且您的JPanel不会向南移动。因此,只需删除该行代码即可。
我没有看到将JFrame的布局设置为FlowLayout的重点,因为JPanel默认使用FlowLayout。