FlowLayout 流式布局,從左到右,如果到邊界就換行再?gòu)淖蟮接摇?/p>
創(chuàng)新互聯(lián)公司自成立以來(lái),一直致力于為企業(yè)提供從網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、成都網(wǎng)站建設(shè)、電子商務(wù)、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個(gè)性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營(yíng)銷服務(wù)。公司擁有豐富的網(wǎng)站建設(shè)和互聯(lián)網(wǎng)應(yīng)用系統(tǒng)開發(fā)管理經(jīng)驗(yàn)、成熟的應(yīng)用系統(tǒng)解決方案、優(yōu)秀的網(wǎng)站開發(fā)工程師團(tuán)隊(duì)及專業(yè)的網(wǎng)站設(shè)計(jì)師團(tuán)隊(duì)。
BorderLayout 邊界布局(默認(rèn)布局方式),按東西南北中五個(gè)方向來(lái)布局,默認(rèn)是中。后設(shè)置在同樣位置的控件會(huì)覆蓋之前的控件。
GridLayout 網(wǎng)格布局,將容器劃分成若干行列的網(wǎng)格,從左到右,然后從上到下。每個(gè)控件的大小相同。
lz 你好
具體代碼如下:
import?java.awt.*;
import?javax.swing.*;
public?class?Test?extends?JFrame{
private?JPanel?panel_1,panel_2;
private?JButton[]?button_1,button_2;
public?Test(){
super("Test");
button_1?=?new?JButton[3];
button_2?=?new?JButton[3];
panel_1??=?new?JPanel(new?GridLayout(3,2));
panel_2??=?new?JPanel(new?GridLayout(3,2));
for?(int?i?=?0;?i??3;?i++)?{
button_1[i]?=?new?JButton("Panel_1:"+(i+1));
button_2[i]?=?new?JButton("Panel_2:"+(i+4));
panel_1.add(button_1[i]);
panel_2.add(button_2[i]);
}
setLayout(new?FlowLayout(FlowLayout.CENTER,5,30));
getContentPane().add(panel_1);
getContentPane().add(panel_2);
setLocation(400,150);
setSize(200,300);
setVisible(true);
setDefaultCloseOperation(3);
}
public?static?void?main(String[]?args)?{
new?Test();
}
}
希望能幫助你哈
center.setLayout(new GridLayout(3,4)); 你這個(gè)是3行4列 也就是能放12個(gè)的 但是你卻放了16個(gè)button 當(dāng)然不行啦
class MainFrame extends JFrame{
MainFrame(){
super("布局");
setSize(600,600);
setLocationRelativeTo(null);
seDefaultCloseOperation(3);
JLabel info=new JLabel("個(gè)人資料");
JPanel w=new JPanel();
JPanel c=new JPanel();
add(info,BorderLayout.NORTH);
add(w,BorderLayout.WEST);
add(c,BorderLayout.CENTER);
w.setLayout(new GridLayout(7,1,10,10));
//c也一樣處理
JLabel a[7];
JTextField t[7];
for(int i=0;i7;i ){
a[i]=new JLabel();
t[i]= new JTextField();
w.add(a[i]);
c.add(t[i]);
}
a[0].setText("姓名:");
//剩下的自己加上去就行
}
//省略主方法
}