package com.controls
{
import flash.desktop.NativeApplication;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher; /**
* @author:Frost.Yen
* @E-mail:871979853@qq.com
* @create: 2016-6-21 下午3:24:57
*
*/
public class ScreenSaver extends EventDispatcher
{
static public const START_SAVER:String = "start_saver";
static public const QUIT_SAVER:String = "quit_saver";
public function ScreenSaver(target:IEventDispatcher=null)
{
super(target);
}
public function set scrrenSaverTime(value:Number):void
{
NativeApplication.nativeApplication.idleThreshold = value;
NativeApplication.nativeApplication.addEventListener(Event.USER_IDLE, handleUserIdle);
NativeApplication.nativeApplication.addEventListener(Event.USER_PRESENT, handleUserPresent);
}
/**
* 当用户处于空闲状态的时间长度达到 idleThreshold 属性指定的时间时调度。
*/
private function handleUserIdle(e:Event):void
{
//开始屏保
this.dispatchEvent(new Event(START_SAVER));
trace("鼠标离开了多少秒", NativeApplication.nativeApplication.timeSinceLastUserInput);
} /**
* 当操作系统在空闲一段时间后检测到鼠标或键盘活动时调度。
*/
private function handleUserPresent(e:Event):void
{
//退出屏保
this.dispatchEvent(new Event(QUIT_SAVER)); }
}
}

用法:

package
{
import com.controls.ScreenSaver;
import flash.display.Sprite;
import flash.events.Event; /**
* ...
* @author FrostYen
*/
public class Main extends Sprite
{
private var _saver:ScreenSaver;
public function Main()
{
_saver = new ScreenSaver();
_saver.scrrenSaverTime = 0.5;
_saver.addEventListener(ScreenSaver.START_SAVER, onStartSaver);
_saver.addEventListener(ScreenSaver.QUIT_SAVER, onQuitSaver);
} private function onStartSaver(e:Event):void
{
trace("start_saver");
} private function onQuitSaver(e:Event):void
{
trace("quit_saver");
} } }

[AIR] AS3.0设置屏保功能的更多相关文章

  1. [ActionScript 3.0] AS3.0 涂鸦及擦除功能,撤销重做步骤记录实例

    package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.BlendMo ...

  2. as3.0划线带撤销功能

    package com{ import flash.display.MovieClip; import flash.display.SimpleButton; import flash.events. ...

  3. 3D屏保:魔方2.0版本

    一个三维魔方的屏保软件,可支持2级到72级的魔方.启动后魔方会自动旋转,并最终回到初始状态.有很多人问我这是怎么做到的,用的什么解魔方的算法,其实我自己根本就不会玩魔方,别人用技巧解魔方,我这程序中用 ...

  4. 取消Debian屏保及显示器休眠

    在产品展示场合,屏保及休眠会带来不好的体验,很多时候需要关闭掉. dpms显示器休眠设置: 开启:$ sudo xset dpms 1 1 2取消:$ sudo xset -dpms xset设置屏保 ...

  5. 3D屏保: 线圈

    LineFlower3DSP 一个3D屏保程序,算法的原理类似于圆内轮旋线的生成. 下载地址: http://files.cnblogs.com/WhyEngine/LineFlower3D_sp.z ...

  6. 3D屏保:排色榜

    3D屏保:排色榜 排色榜,是一个针对图形学中的色彩进行排序的DEMO,这里的色是色彩的意思,看成别的点进来的同学请自觉面壁.该DEMO可以按RGB,GBR,BRG,灰度值四种方式进行排序.排序算法为冒 ...

  7. 3D屏保:N皇后

    前几天园子里有人发表关于8皇后的算法.只有代码,没有能运行的DEMO多枯燥.于是我这两天抽时间写了个N皇后的屏保程序.程序启动后会从4皇后到14皇后显示其所有排列,每隔0.5秒自动切换一次.按下空格键 ...

  8. 屏保:画线圈LineFlower

    LineFlowerSP 小时候玩过一种画线圈的玩具,将一个圆形齿轮在一个大圈里转,会画出各种图形来.这个程序就是模仿它做的.算法原理:将一个圆围绕着另一个大圆公转,并且它还做自转运动.那么圆内一点的 ...

  9. 3D屏保: 彩色盘子

    一个彩色盘子的屏保 记得小时候在电视上看过一个科普节目,由多个颜色组成的盘子,如果快速旋转起来,会看上去是白色的.于是我就写了这个屏保程序,但发现在计算机上模拟并不是这样的. "RollPl ...

随机推荐

  1. 怎么用ABBYY创建属于自己的PDF

    怎么创建一份属于自己的PDF文档呢?由于PDF格式文件具有跨平台.支持超长文件.安全可靠性高等诸多优势,在日常办公学习中应用越来越广泛.而随着技术的发展,各种办公软件也对PDF提供越来越多的支持,但P ...

  2. linux服务之audit

    http://blog.chinaunix.net/uid-20786165-id-3167391.html http://blog.chinaunix.net/uid-8389195-id-1741 ...

  3. wikioi 1160 蛇形矩阵

    /*======================================================================== 1160 蛇形矩阵 题目描述 Descriptio ...

  4. C#-提取网页中的超链接

    转载:http://www.wzsky.net/html/Program/net/26849.htmlusing System; using System.Xml; using System.Text ...

  5. 【dubbo】dubbo-admin在jdk 1.8上部署出错问题

    今天在linux上部署dubbo-admin-2.5.4,一直报错: ERROR context.ContextLoader - Context initialization failedorg.sp ...

  6. smarty函数

    内置函数(重要的几个): <{html_checkboxes name='nation' values=$code output=$name selected=$selid separator= ...

  7. 并行计算之Memory barrier(内存

    本文转载自:http://name5566.com/4535.html 参考文献列表:http://en.wikipedia.org/wiki/Memory_barrierhttp://en.wiki ...

  8. javascript 定义正则表达式

    js中定义正则表达式有两种,使用RegExp和使用字面量. 使用字面量定义时需要注意:必须以/开始,以/结束,就像定义字符串一样("test"). 但是,js的正则表达式可以通过指 ...

  9. 【shell】变量

    shell变量可分为两类:局部变量和环境变量.局部变量只在创建它们的shell中可用.而环境变量则可以在创建它们的shell及其派生出来的任意子进程中使用.有些变量是用户创建的,其他的则是专用shel ...

  10. [转]UOS 中的虚拟网络设备

    随着网络技术,虚拟化技术的发展,越来越多的高级网络设备被加入了到了 Linux 中,这些设备在 UOS 中起到了广泛而关键的作用,包括 Open vSwitch.TAP 设备.Veth 设备等等,梳理 ...