Categorized | ActionScript, Flash

Utilizando a Classe Timer no ActionScript 3.0

Uma coisa muito legal no ActionScript 3.0 é a classe Timer (flash.utils.Timer). Esta nova classe substitui os antigos métodos setInterval() e setTimeout() e claro, inclui novas funcionalidades.  Por exemplo no ActionScript 2.0 você teria algo como:

//-- ActionScript 2.0
var segundos : Number = setTimeout(rodaUmaVez, 1000); // 1 segundo

function rodaUmaVez():void
{
trace("rodei uma vez...");
}

No entanto no ActionScript 3.0 com a nova classe Timer a mesma idéia acima
fica:


//-- ActionScript 3.0
var segundos : Timer = new Timer(1000, 1); // 1 segundo

segundos.addEventListener(TimerEvent.TIMER, rodaUmaVez);

segundos.start();

function rodaUmaVez(event:TimerEvent):void
{
 trace("rodei uma vez...");
}

Ao instanciar o novo objeto timer você passa dois parâmetros. O primeiro é a frequência com que será executado, neste caso é 1000 milisegundos que é 1 segundo. E no segundo parâmetro é a quantidade de vezes, se você colocar 1 vai rodar apenas uma vez e pronto. Caso você queira rodar infinito pode informar 0 ou não colocar o segundo parâmetro e pronto. Outra coisa nesta nova classe é que o TimerEvent.TIMER, a cada milisegundo e e a cada número de vezes que foi informado no construtor ele executa a função que você informar no método addEventListener da classe Timer.

Leave a Reply

You must be logged in to post a comment.