import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class CardLayoutTest extends Applet
	implements ActionListener{

  Panel pcenter = new Panel();
  Panel psouth = new Panel();//默认使用 FlowLayout 布局。

  CardLayout card = new CardLayout();

  TextField tf=new TextField(10);
  String[] btnLabels={"查找","第一个","下一个","上一个","最后一个"};
  Button[] btns = new Button[btnLabels.length];

  public void init(){
	setLayout(new BorderLayout());//设置布局

	add(pcenter,BorderLayout.CENTER);//加入 panel
	add(psouth, BorderLayout.SOUTH);

	pcenter.setLayout(card);//设置布局

	//加入组件
	pcenter.add(new Label("0: label"),"0");
	pcenter.add(new Button("1: Button"),"1");
	pcenter.add(new Button("2: Button"),"2");

	psouth.add(tf);

	for(int i=0; i< btns.length; i++){
	  btns[i]=new Button(btnLabels[i]);
	  btns[i].addActionListener(this);//加入监听器
	  psouth.add(btns[i]);
	}
  }

  //监听器方法，采用一个监听器处理所有按钮事件。
   public void actionPerformed(ActionEvent e){
	 	Object obj = e.getSource();//获取事件源

		//获取按钮上的标签文字
		String lab =( (Button)obj ).getLabel();
		if(lab.equals("第一个")){
		  card.first(pcenter);
		}else if(lab.equals("下一个")){
		  card.next(pcenter);
		}else if(lab.equals("上一个")){
		  card.previous(pcenter);
		}else if(lab.equals("最后一个")){
		  card.last(pcenter);
		}else if(lab.equals("查找")){
		  card.show(pcenter,tf.getText());
		}
	  }
}
/*<applet code="CardLayoutTest" width="400" height="200">
  </applet>*/
