Before we start you need to be familiar with MouseEvent and Timer classes.
var _timer:Timer = new Timer(5000); function Start():void { _timer.addEventListener(TimerEvent.TIMER, ShowMsg, false, 0, true); _timer.start(); stage.addEventListener(MouseEvent.MOUSE_MOVE, StopTimer, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_DOWN, StopTimer, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, StopTimer, false, 0, true); } function ShowMsg(e:TimerEvent):void { trace("There is no activity"); } function StopTimer(e:MouseEvent):void { _timer.stop(); _timer.start(); } Start();
The first thing I’ve done is to setup a Timer object to count up to 5 seconds ( you can change that to what ever numer of seconds you want ).
The timer object also has an event listener so we can know when the 5 seconds are over.
I have setup some event listeners that will help detecting any actions of the mouse on the Stage ( MOUSE_DOWN, MOUSE_MOVE and MOUSE_UP )
If during those 5 seconds nothing happens ( mouse is not moved or performs a click ) ShowMsg() function will be fired up and give you a message of inactivity.
If the mouse is moved the StopTimer() function will be activated and reset timers count.
This is a useful and easy way to detect user activity.