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. IT运维管理市场

    背景 http://www.cnitom.com/portal.php 中国it运维网 http://www.365master.com it运维网 http://www.51ou.com/ 51运维 ...

  2. Bootstrap 3兼容IE8浏览器(转)

    Bootstrap是一个响应式的布局,你可以在宽屏电脑.普通电脑,平板电脑,手机上都得到非常优秀的布局体验.这种响应式的布局正是通过CSS3的媒体查询(Media Query)功能实现的,根据不同的分 ...

  3. lambda 的使用汇总

    d=lambda x:x+1print(d(10))lambda 相当于一个轻量函数返回 d=lambda x:x+1 if x>0 else "error"print(d( ...

  4. Review Board——在线代码审查工具

    代码审查(Code Review)不但可以提高质量,而且还是一个知识共享和指导的极好的手段.不幸的是,准备工作的辛苦和工具支持的缺乏让代码审查很容易被延至“稍后再议”.Review Board的目标便 ...

  5. SqlServer数据文件增长也很快,到底是哪些表增长造成的呢?

    查询数据库中所有表的大小,哪些表的数据量较大 create table #t (name ), rows ), data ), index_size ), unused )) exec sp_MSfo ...

  6. [oracle] ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法

    ORACLE 32位数据库正常安装,sqlplus 正常连接数据库但是PL/SQL developer 64位却报出这个错误. 第一反应是缺少32位客户端.下载安装,配置完成后如图所示: 还是报这个错 ...

  7. openstack奠基篇:devstack (liberty)于centos 7安装

    openstack是什么,能做什么,我就不说了,他的优势和伟大,可以想想AWS的云服务平台.学习和研究openstack(IaaS),个人的习惯是有一个可以操作的平台,然后结合代码看看详细逻辑,这个过 ...

  8. (转)【Android测试工具】03. ApkTool在Mac上的安装和使用(2.0版本)

    http://blog.csdn.net/wirelessqa/article/details/8997168 http://code.google.com/p/android-apktool/dow ...

  9. PXE-无人值守安装

    [root@rhel6 ~]# cp /root/ks.cfg /var/ftp/ks.cfg [root@rhel6 ~]# cat ks.cfg #platform=x86, AMD64, 或 I ...

  10. Linux下编译java并生成jar包

    下面是WordCount.java类 package com.ll; import java.io.IOException; import java.util.Iterator; import jav ...