JFrame显示一个面板但没有显示另一个面板

时间:2012-02-08 20:32:54

标签: java swing user-interface jframe panel

嘿伙计我正在创建一个JFrame,我创建了2个面板。第一个位于中心,连续有3个按钮,第二个位于南方,连续有3个按钮。框架仅显示最后一个面板。它就像它创建了第一个面板,然后用第二个面板覆盖它。这是我的代码:

private JPanel getSouthPanel()
{
  JPanel panel1 = new JPanel(new BorderLayout());
  panel1.add(button1, BorderLayout.WEST);
  panel1.add(button2, BorderLayout.CENTER);
  panel1.add(button3, BorderLayout.EAST);
  return panel1;
}

private JPanel getCenterPanel()
{
  JPanel panel = new JPanel(new BorderLayout());
  panel.add(button1, BorderLayout.WEST);
  panel.add(button2, BorderLayout.CENTER);
  panel.add(button3, BorderLayout.EAST);
  return panel;
}

public void layoutComponents()
{
  Container container = frame.getContentPane();
  container.setLayout(new BorderLayout());
  container.add(getCenterPanel(), BorderLayout.NORTH);
  container.add(getSouthPanel(), BorderLayout.SOUTH);
  frame.setSize(300, 300);
  frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}

1 个答案:

答案 0 :(得分:2)

问题是你不能在两个不同的面板上放置相同的按钮,你需要为每个面板创建单独的按钮。