翻牌效果问题
我想用外部类来实现翻牌效果,单不知道怎么传next方法所需的参数,下面是内部类的方式public void setCardLayout(){
//创建一个CardLayout常对象可以被内部类访问
final CardLayout c1=new CardLayout();
cardPanel=new Panel();
cardPanel.setLayout(c1);
Button btu1=new Button("A");
Button btu2=new Button("K");
/*
* new了一个事件监听器a1,同时为这个事件实现了事件相应.
*/
ActionListener a1=new ActionListener(){
public void actionPerformed(ActionEvent e){
c1.next(cardPanel);//调用CardLayout的next()方法实现翻牌效果
}
};
// ActionL a1=new ActionL ();
//将事件监听器添加到两个按钮上;
btu1.addActionListener(a1);
btu2.addActionListener(a1);
cardPanel.add(btu1,"5");
cardPanel.add(btu2,"6");
}
/*我写的外部类 但是不成功
class ActionL implements ActionListener{
public void actionPerformed(ActionEvent e){
new CardLayout().next(cardPanel);
}
}*/
----------------解决方案--------------------------------------------------------
你每次都new一个出来,当然不行了
----------------解决方案--------------------------------------------------------
你应该把CardLayout的引用作为构造函数的参数传过去
----------------解决方案--------------------------------------------------------