当程序在5-10分钟内未被触摸时,请关闭.我使用的计时器,即使当程序被触摸,它关闭时,时间已到,我如何解决它?
var myTimer:Timer = new Timer(300000);
myTimer.addEventListener(TimerEvent.TIMER, timerListener, false, 0, true);
function timerListener (e:TimerEvent):void{
fscommand("quit");
}
myTimer.start();发布于 2018-05-22 02:56:12
下面是一个简单的例子.
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
}发布于 2018-05-21 12:04:58
myTimer.reset();重置它,然后重新启动它,myTimer.start();,您只需将它放在指示“活动”的事件处理程序中--也许每n次就可以防止它大量触发。
var myTimer:Timer = new Timer(300000);
myTimer.addEventListener(TimerEvent.TIMER, timerListener, false, 0, true);
function timerListener (e:TimerEvent):void{
fscommand("quit");
}
myTimer.start();我不会深入到定制事件类中,但是有大量的源代码,但基本上在这些类中使用了.reset()和.start()。
例如
https://stackoverflow.com/questions/50435019
复制相似问题