import java.awt.*;
import java.awt.event.*;class CardStart
{
public static void main(String[] args)
{
CardTest c=new CardTest("MyCardLayoutTest");
}
}class CardTest extends Frame
{
private Panel t1=new Panel();
private Panel t2=new Panel();
private Panel t3=new Panel();
private Panel t4=new Panel();
private Panel p1=new Panel();
private Panel p2=new Panel();
private Button b1=new Button();
private Button b2=new Button();
private Button b3=new Button();
private Button b4=new Button(); private Label l1=new Label("The Number 1 CardPage");
private Label l2=new Label("The Number 2 CardPage");
private Label l3=new Label("The Number 3 CardPage");
private Label l4=new Label("The Number 4 CardPage");
public CardTest(String s)
{
super(s);
MyWL mw=new MyWL(this);
myML mm=new myML(this);
this.addWindowListener(mw);
this.addMouseListener(mm);
b1.setSize(30,5);
this.setLayout(new BorderLayout());
this.setSize(500,400);
p2.setSize(500,200); t1.add(l1);
t2.add(l2);
t3.add(l3);
t4.add(l4); p1.setLayout(new CardLayout());
p1.add("a",t1);
p1.add("b",t2);
p1.add("c",t3);
p1.add("d",t4); p2.setLayout(new FlowLayout());
b1.setName("Card1");
b2.setName("Card2");
b3.setName("Card3");
b4.setName("Card4");
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(b4); p1.setBackground(Color.blue);
p2.setBackground(Color.red);
this.add(p2,BorderLayout.SOUTH);
this.add(p1,BorderLayout.CENTER);
this.setResizable(false);
this.setVisible(true);
}
public void t1show()
{
t1.setVisible(true);
}
public void t2show()
{
t2.setVisible(true);
}
public void t3show()
{
t3.setVisible(true);
}
public void t4show()
{
t4.setVisible(true);
}
}class MyWL extends WindowAdapter
{
CardTest t;
public MyWL(CardTest ct)
{
t=ct;
}
public void windowClosing(WindowEvent we)
{
t.dispose();
}
}
class myML extends MouseAdapter
{
CardTest t;
public myML(CardTest ct)
{
t=ct;
}
public void mouseClicked(MouseEvent me)
{
if((Button)me.getSource()==b1)
{
t.t1show();
}
else if((Button)me.getSource()==b2)
{
t.t2show();
}
else if((Button)me.getSource()==b3)
{
t.t3show();
}
else if((Button)me.getSource()==b4)
{
t.t4show();
}
else
{
System.out.println("plz choose a card");
}
}
}我纳闷为什么会在做B1,B2,B3,B4的选择时出这样的错误,搞不懂
谢谢各位大侠了,我是第一次发问
import java.awt.event.*;class CardStart
{
public static void main(String[] args)
{
CardTest c=new CardTest("MyCardLayoutTest");
}
}class CardTest extends Frame
{
private Panel t1=new Panel();
private Panel t2=new Panel();
private Panel t3=new Panel();
private Panel t4=new Panel();
private Panel p1=new Panel();
private Panel p2=new Panel();
private Button b1=new Button();
private Button b2=new Button();
private Button b3=new Button();
private Button b4=new Button(); private Label l1=new Label("The Number 1 CardPage");
private Label l2=new Label("The Number 2 CardPage");
private Label l3=new Label("The Number 3 CardPage");
private Label l4=new Label("The Number 4 CardPage");
public CardTest(String s)
{
super(s);
MyWL mw=new MyWL(this);
myML mm=new myML(this);
this.addWindowListener(mw);
this.addMouseListener(mm);
b1.setSize(30,5);
this.setLayout(new BorderLayout());
this.setSize(500,400);
p2.setSize(500,200); t1.add(l1);
t2.add(l2);
t3.add(l3);
t4.add(l4); p1.setLayout(new CardLayout());
p1.add("a",t1);
p1.add("b",t2);
p1.add("c",t3);
p1.add("d",t4); p2.setLayout(new FlowLayout());
b1.setName("Card1");
b2.setName("Card2");
b3.setName("Card3");
b4.setName("Card4");
p2.add(b1);
p2.add(b2);
p2.add(b3);
p2.add(b4); p1.setBackground(Color.blue);
p2.setBackground(Color.red);
this.add(p2,BorderLayout.SOUTH);
this.add(p1,BorderLayout.CENTER);
this.setResizable(false);
this.setVisible(true);
}
public void t1show()
{
t1.setVisible(true);
}
public void t2show()
{
t2.setVisible(true);
}
public void t3show()
{
t3.setVisible(true);
}
public void t4show()
{
t4.setVisible(true);
}
}class MyWL extends WindowAdapter
{
CardTest t;
public MyWL(CardTest ct)
{
t=ct;
}
public void windowClosing(WindowEvent we)
{
t.dispose();
}
}
class myML extends MouseAdapter
{
CardTest t;
public myML(CardTest ct)
{
t=ct;
}
public void mouseClicked(MouseEvent me)
{
if((Button)me.getSource()==b1)
{
t.t1show();
}
else if((Button)me.getSource()==b2)
{
t.t2show();
}
else if((Button)me.getSource()==b3)
{
t.t3show();
}
else if((Button)me.getSource()==b4)
{
t.t4show();
}
else
{
System.out.println("plz choose a card");
}
}
}我纳闷为什么会在做B1,B2,B3,B4的选择时出这样的错误,搞不懂
谢谢各位大侠了,我是第一次发问
解决方案 »
- 有关线程执行的顺序
- 关于用JAVA读写SQL2K中image字段的问题
- java打印:文字,图片混打问题
- 如何在JFrame的menubar上增加一层panel
- jcreator 和 jbuilder 那个好用?
- 一朋友需要mobileset3 (for jbuilder),我开贴子联系他!(希望大家帮忙up, 都有分,多谢了)谢谢大家!!!
- 急,用jdbc-odbc连接access数据库,是否支持cursor的上下游动?(在线等待)
- 哪里可以找到JIT(Just-In-Time)编译器
- 大虾们,请帮忙!
- java多线程
- 关于equals()方法覆盖的问题
- BufferedReader#readline()发生莫名IllegalArgumentException异常
private Button b2=new Button();
private Button b3=new Button();
private Button b4=new Button();
把private 去掉.最好变成
Button b1=new Button("1");
Button b2=new Button("2");
Button b3=new Button("3");
Button b4=new Button("4");
方便一点
if((Button)me.getSource()==b1)
{
t.t1show();
}改成
if((Button)me.getSource()==t.b1)
{
t.t1show();
}
其余的类似.其他的问题还没改.
头晕晕的
public Button getButton1(){
return b1;
} if((Button)me.getSource()==b1)
变成
if((Button)me.getSource()==t.getButton1())