網格布局(GridLayout)
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GridLayoutDemo extends JFrame implements ActionListener{
/**
* @param args
*/
private JButton buttons[];
private final String names[]={"one","two","three","four","five","six"};
private boolean toggle=true;
private Container container;
private GridLayout layout1,layout2;
public GridLayoutDemo(){
super("GridLayout 布局管理的應用");
layout1=new GridLayout(2,3,5,5);
layout2=new GridLayout(3,2);
container=getContentPane();
container.setLayout(layout1);
setSize(600,300);
setVisible(true);
buttons=new JButton[names.length];
for(int count=0;count<names.length;count++){
buttons[count]=new JButton(names[count]);
buttons[count].addActionListener(this);
container.add(buttons[count]);
}
}
@Override
public void actionPerformed(ActionEvent e) { //處理按鈕事件代碼
// TODO Auto-generated method stub
if(toggle)
container.setLayout(layout2);
else
container.setLayout(layout1);
toggle=!toggle;
container.validate(); //使容器和它的所有子元件有效地顯示
}
public static void main(String[] args) {
// TODO Auto-generated method stub
GridLayoutDemo application = new GridLayoutDemo();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
