Foros del Web » Programación para mayores de 30 ;) » Java »

Entendiendo startApp y timer

Estas en el tema de Entendiendo startApp y timer en el foro de Java en Foros del Web. Hola estoy aprendiendo y no entiendo como funciona los ciclos y supongo que mas. Pongo me código de ejemplo: public class MiCrono extends MIDlet implements ...
  #1 (permalink)  
Antiguo 16/08/2012, 09:27
Avatar de andy98  
Fecha de Ingreso: diciembre-2011
Mensajes: 32
Antigüedad: 10 años, 6 meses
Puntos: 2
Información Entendiendo startApp y timer

Hola estoy aprendiendo y no entiendo como funciona los ciclos y supongo que mas. Pongo me código de ejemplo:

public class MiCrono extends MIDlet implements CommandListener{

private Display display;
private Form form;
private Command exit, stop;
private Timer timer;
private TestTimerTask task;
static int count = 0;

public MiCrono(){
display = Display.getDisplay(this);
form = new Form("Timer Example");
exit = new Command("Exit", Command.EXIT, 1);
stop= new Command("Stop", Command.STOP, 2);
form.append("Please wait for timer.. \n");
form.addCommand(exit);
form.addCommand(stop);
form.setCommandListener(this);
}

public void startApp() {
timer = new Timer();
task = new TestTimerTask();
timer.schedule(task, 1000);
display.setCurrent(form);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
notifyDestroyed();
}

public void commandAction(Command c, Displayable d){
String label = c.getLabel();
if (label.equals("Stop")){
timer.cancel();
}else if (label.equals("Exit")) {
destroyApp(true);
}
}

private class TestTimerTask extends TimerTask{

public final void run(){
form.append(count + "\n");
form.append("Timer Execute Count: " + ++count + "\n");
}
}

// Mis dudas son ¿por que el count no sigue contando y se visualiza en pantalla?
  #2 (permalink)  
Antiguo 17/08/2012, 14:24
Avatar de andy98  
Fecha de Ingreso: diciembre-2011
Mensajes: 32
Antigüedad: 10 años, 6 meses
Puntos: 2
Respuesta: Entendiendo startApp y timer

Resuelto:

He cambiado el comando en timer.schedule por este otro timer.scheduleAtFixedRate(task, 0, 1000);

Y todo funciona como yo deseaba.

Etiquetas: j2me
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:22.