Refiq H-ev
Refiq H-ev

Reputation: 13

End the program itself when there is no movement Action Script 3

Turn off when the programa is not touched for 5-10 minutes. I am using timer Even when the program is touched, it closes when the time is up How can i solve it?

var myTimer:Timer = new Timer(300000);
myTimer.addEventListener(TimerEvent.TIMER, timerListener, false, 0, true);
function timerListener (e:TimerEvent):void{
fscommand("quit");
}
myTimer.start();

Upvotes: 0

Views: 57

Answers (2)

VC.One
VC.One

Reputation: 15881

Here is a simple example to study...

var myTimer:Timer = new Timer(300000);

myTimer.addEventListener(TimerEvent.TIMER, timerListener, false, 0, true);
stage.addEventListener(MouseEvent.MOUSE_MOVE, reset_Timer); //check for any mouse movement

myTimer.start();

function timerListener (e:TimerEvent) :void
{
    //# function happens when Timer amount is reached (eg: mouse did not move to reset it)

    //choose one below..

    //fscommand("quit"); //# close app

    //myTimer.stop(); myTimer.start(); //# stop and then restart Timer

    //stage.removeEventListener(MouseEvent.MOUSE_MOVE, reset_Timer); //# cancel any further usage of this function
}

function reset_Timer (e:MouseEvent) :void 
{
    //# function happens after mouse not moved for total millisecond count of Timer amount

    myTimer.reset(); //reset countdown because mouse was moved 
}

Upvotes: 0

Mark Schultheiss
Mark Schultheiss

Reputation: 34168

myTimer.reset(); reset it and then start it again myTimer.start(); you just have to put that in some event handler that indicates "activity" - perhaps every n time to keep it from firing a lot

var myTimer:Timer = new Timer(300000);
myTimer.addEventListener(TimerEvent.TIMER, timerListener, false, 0, true);
function timerListener (e:TimerEvent):void{
    fscommand("quit");
}
myTimer.start();

I won't dive into the custom event class but there are a good number of sources for that but basically use the .reset() and .start() in those.

For example

Upvotes: 1

Related Questions