有个问题请指教!
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
public class Nn extends Applet implements ActionListener {
private TextField numberField;
private Button bar1,bar2;
private int x=300,xChange =4,a,number;
private int y=250,yChange=2;
private int diameter=12;
private int rectLeftX=200,rectRightX=560;
private int rectTopY=200,rectBottomY=400;
public void init(){
bar1=new Button ("start");
add(bar1);
bar1.addActionListener(this);
bar2=new Button ("stop");
add(bar2);
bar2.addActionListener(this);
numberField=new TextField(8);
add(numberField);
numberField.addActionListener(this);}
public void actionPerformed(ActionEvent event){
number=Integer.parseInt(numberField.getText());
if(event.getSource()==bar1)
{a=1;}
if(event.getSource()==bar2)
{a=2;}
repaint();}
public void paint (Graphics g){
g.setColor(Color.green);
g.fillRect(rectLeftX,rectTopY,rectRightX-rectLeftX,rectBottomY-rectTopY);
g.setColor(Color.red);
g.fillOval(x,y,diameter,diameter);
if(a==1){
for (int n=0;n<number;n++){
Color backgroundColour=getBackground ();
g.setColor(backgroundColour.green);
g.fillOval(x,y,diameter,diameter);
if (x<=rectLeftX)
xChange=-xChange;
if(x>=(rectRightX-12))
xChange=-xChange;
if (y<=rectTopY)
yChange=-yChange;
if(y>=(rectBottomY-12))
yChange=-yChange;
x=x+xChange;
y=y+yChange;
g.setColor(Color.red);
g.fillOval(x,y,diameter,diameter);
try {Thread .sleep(2);} catch(InterruptedException e) {}
}
g.drawString("完成",600,300);
if(a==2)
{xChange=0;
yChange=0;
}
}
}
}
我怎么能在小球运动的过程中点“stop"让它停止?
先谢谢了。