Tengo una clase llamada cronometro, que lo que hace es una cuenta atras hasta 0, para que aparezca por pantalla y por salida tmb con el trace para comprobar que funcione.
Estoy intentando aprender a llamar la clase con otra clase, para asi llamar mas de 1 cronometro sin problemas, pero al llamarla no aparece por pantalla la cuenta atras, solamente el trace, incluso añadiendo el codigo en mi programa principal, tampoco aparece la cuenta atras por pantalla, nose que sucede.
Tambien tengo otro problema que no se como incorporar un nuevo tiempo de cuenta atras, al cambiar la variable tiempo por 10 por ejemplo, empieza a contar desde 10, pero cuando le pongo el timer Timer(1000,10) para que me lo cuente 10 veces, solo lo cuenta 5 como esta en la clase inicial, si alguien puede ayudarme... el codigo que tengo es:
package {
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFieldType;
public class cronometro extends MovieClip {
public var tiempo:int = 5;
public var timer:Timer= new Timer(1000,100);
var texto:TextField = new TextField();
public function cronometro() {
// constructor code
timer.start();
timer.addEventListener(TimerEvent.TIMER, tiempo2);
texto.type=TextFieldType.DYNAMIC;
texto.x = 100;
texto.y = 50;
texto.autoSize=TextFieldAutoSize.LEFT; //Autoredimension del campo
addChild (texto);
}
public function tiempo2(tiempoevent:TimerEvent)
{
tiempo--;
texto.text = "Tiempo "+tiempo.toString();
trace(tiempo);
if (tiempo==0)
{
trace("Fin");
}
}
}
}
Al ejecutar solo esto funciona a la perfeccion, pero al invocarlo con esta otra funcion no:
package {
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import cronometro;
public class main extends MovieClip {
var temp1:cronometro;
public function main() {
// constructor code
temp1 = new cronometro();
temp1.timer = new Timer(1000,10);
temp1.tiempo=10;
}
}
}