**我是Java新手!
那样放置这是我到目前为止所做的:
add(panel1, BorderLayout.PAGE_START);
add(panel2, BorderLayout.NORTH);
add(panel3, BorderLayout.CENTER);
add(panel4, BorderLayout.SOUTH);
add(panel5, BorderLayout.PAGE_END);
他们彼此重叠,有些人没有表现出来。我该如何解决呢?
很抱歉,但本章在一个会话中进行了解释。我的主要问题是我不明白我可以用。替换BorderLayout.X。
这是迄今为止我所拥有的:
private JPanel contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5,5,5,5));
contentPane.setLayout(new GridLayout(4,1,0,0));
JPanel panel1 = new JPanel();
panel1.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"),
"title2", TitledBorder.LEADING, TitledBorder.TOP, null, null));
panel1.setLayout(new GridLayout(2, 2));
JPanel panel2= new JPanel();
panel2.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"),
"title", TitledBorder.LEADING, TitledBorder.TOP, null, null));
contentPane.add(panel2);
panel2.setLayout(new GridLayout(1,2,0,0));
add(panel1);
add(panel2);
add(panel3);
add(panel4);
我的布局设置为gridLayout,现在添加面板时我应该写什么add(panel1,???)?
答案 0 :(得分:0)
您可以使用GridLayout
。使用GridLayout(int rows, int cols, int hgap, int vgap)
构造函数,您可以定义垂直和水平间隙。
JPanel mainPanel = new JPanel(new GridLayout(5, 1, 0, 5));
根据您的更新;您必须将contentPane
设置为您的框架。
frame.setContentPane(contenPane);