我正在尝试将2个面板添加到一个面板中。现在的问题是,当我单独添加第一个或第二个时,我可以在面板中看到它们。 但是当我添加它们时(把//添加(panel2,BorderLayout.SOUTH);没有评论)我没有看到它们中的任何一个。 Weblabel(“测试”)始终显示。 现在两个面板都有一个onclick方法,当你看不到它们时(如果它们都被添加),如果单击面板所在的位置,onclick仍然有效。
我已经尝试过其他布局管理器,但没有成功。有谁知道这个问题可能来自哪里?
setLayout(new BorderLayout());
add(panel1,BorderLayout.NORTH);
add(new WebLabel("Test"), BorderLayout.CENTER);
//add(panel2,BorderLayout.SOUTH);
我在构造函数中初始化两个面板。
public MultipleFloorPlanEntityPanel(int xCoordinate, int yCoordinate, FloorPlanEntityPanel panel1, FloorPlanEntityPanel panel2){
this.xCoordinate = xCoordinate;
this.yCoordinate = yCoordinate;
this.panel1 = panel1;
this.panel2 = panel2;
layoutComponents();
}
已解决:重新初始化额外的面板并且有效:)
答案 0 :(得分:2)
您需要面板包含两个面板吗?试试这个
JPanel top = new JPanel(new GridLayout(1,1))
JPanel left = new JPanel();
JPanel right = new JPanel();
top.add(left);
top.add(right);
JFrame frame = new JFrame();
frame.add(top);
frame.setSize(400,400);
frame.setVisible(true);