parar la ejecucion de un applet
Publicado por Cindy (1 intervención) el 30/10/2006 14:21:07
Estoy haciendo un programa que dado n numero de lineas, las dibuje con color y posicion aleatoria, debe empezar cuando oprima el boton asignado "Empezar" y debe parar cuando oprima el botón asignado "Finalizar", la verdad no sé como hacer para que en la función action, al oprimir "Finalizar", pare.
Este es mi código para que se sientan más familiarizados:
/**
* Clase que dibuja n lineas en posición y color aleatorio
* @author Esmeralda
* @date Octubre 29 de 2006
* @version 1.0
*/
package mundo;
import java.applet.Applet;
import java.awt.*;
public class Lineas extends Applet
{
int numeroLineas; //Cantidad de lineas a dibujar
Button b1,b2; // Botones para empezar y finalizar
TextField in; // Lectura de el numero de lineas
public void init()
{
numeroLineas=0;
b1 = new Button("Empezar");
b2 = new Button("Finalizar");
in = new TextField(10);
add(new Label("Ingrese el numero de lineas"));
add(in);
add(b1);
add(b2);
}
public void paint(Graphics g)
{
for(int i=0; i<numeroLineas; i++)
{
g.setColor(new Color((int)(Math.random()*255),(int)(Math.random()*255),(int)(Math.random()*255)));
g.drawLine((int)(Math.random()*700)+50,(int)(Math.random()*700)+50,(int)(Math.random()*700)+50,(int)(Math.random()*700)+50);
}
}
public boolean action(Event e, Object o)
{
// actualizacion del numero de lineas
if(e.target instanceof TextField)
{
numeroLineas = Integer.parseInt(in.getText());
}
//evaluacion de los botones
if(e.target instanceof Button)
{
// invocacion de paint, si el botón es "Empezar"
if(e.target == b1)
{
repaint();
}
// Detención del applet, si el botón es "Finalizar"
else
{
//parar el applet
}
}
return true;
}
}
Gracias al que me pueda ayudar.
Este es mi código para que se sientan más familiarizados:
/**
* Clase que dibuja n lineas en posición y color aleatorio
* @author Esmeralda
* @date Octubre 29 de 2006
* @version 1.0
*/
package mundo;
import java.applet.Applet;
import java.awt.*;
public class Lineas extends Applet
{
int numeroLineas; //Cantidad de lineas a dibujar
Button b1,b2; // Botones para empezar y finalizar
TextField in; // Lectura de el numero de lineas
public void init()
{
numeroLineas=0;
b1 = new Button("Empezar");
b2 = new Button("Finalizar");
in = new TextField(10);
add(new Label("Ingrese el numero de lineas"));
add(in);
add(b1);
add(b2);
}
public void paint(Graphics g)
{
for(int i=0; i<numeroLineas; i++)
{
g.setColor(new Color((int)(Math.random()*255),(int)(Math.random()*255),(int)(Math.random()*255)));
g.drawLine((int)(Math.random()*700)+50,(int)(Math.random()*700)+50,(int)(Math.random()*700)+50,(int)(Math.random()*700)+50);
}
}
public boolean action(Event e, Object o)
{
// actualizacion del numero de lineas
if(e.target instanceof TextField)
{
numeroLineas = Integer.parseInt(in.getText());
}
//evaluacion de los botones
if(e.target instanceof Button)
{
// invocacion de paint, si el botón es "Empezar"
if(e.target == b1)
{
repaint();
}
// Detención del applet, si el botón es "Finalizar"
else
{
//parar el applet
}
}
return true;
}
}
Gracias al que me pueda ayudar.
Valora esta pregunta


0