[AIR] AS3.0设置屏保功能

package com.controls
{
    import flash.desktop.NativeApplication;
    import flash.events.Event;
    import flash.events.EventDispatcher;
    import flash.events.IEventDispatcher;

    /**
     * @author:Frost.Yen
     * @E-mail:[email protected]
     * @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");
        }

    }

}
时间: 2024-10-06 03:30:45

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

「Mac技巧」屏保设置不生效的解决办法

使用Mac的下伙伴有没有遇到过这样的问题,我们明明设置了屏保,但是根本不起作用,这是怎么回事呢?今天Macdown小编就带大家解决屏保设置不生效问题! https://www.macdown.com 其实是我们的节能设置中,设置的时间比屏保的时间长,所以在我们还没有启动屏保的时候,它就自动关闭了显示器. 我们可以将它调大一点,也可以点击“当显示器关闭时,防止电脑自动进入休眠”,这样就能防止电脑黑屏时,中断我们正在下载的东西. 当然,也有朋友在设置屏保的是很苦恼,感觉所有的时间不是自己想要.比如你

注册表中一些与用户登录和屏保相关的设置项

以下给出一个reg文件,可以清除某些讨厌的设置(例如某些公司预装的操作系统针对所谓的"信息安全"进行的设置),主要包括用户登入时不需要按ctrl+alt+del,不显示legalnotice,登入界面上显示关机按钮,显示上次登入的用户名,同时允许设置屏保.将以下内容保存为reg文件后双击导入,使注册表修改立即生效的话,可以关闭explorer.exe进程,然后重新建立一个.这里给一个方便的命令行来完成这个关闭并新建的工作: taskkill /f /im explorer.exe&am

Android TV开发--实现屏保图片云端可配置

功能描述:  在TV上,出厂时会默认配置一组屏保图片,用作屏保初期展示. 但作为运营的工具之一,当然会希望屏保图片可以在云端配置,若未配置则采用系统默  认图片. 若配置了一组新的图片,则需要下载到本地,在下次启动屏保时用来展示. 功能明确点: 1.屏保check时机:屏保启动 2.新屏保使用时机:屏保启动 3.屏保从云端下载图片后保存路径: ../files/screenPic/pathA/ ../files/screenPic/pathB/ 此处采用A/B目录来保存,便于在使用一组的同时下载

linux取消屏保

ubuntu默认10分钟就会进入屏保. 我用的ubuntu server12.04,由于没有桌面,只能用命令.如下: setterm -blank 0 //禁用屏保 setterm -blank 1 //1分钟后开始屏保 settern是系统自带的命令,的功能相当强大,具体可用setterm --help查看. 如:setterm -dump 1  //获得1屏的信息截图, 要获得2屏的信息截图,setterm -dump 2 即可. 但上面的关闭屏保命令仅适用于本屏,我暂时没有找到关于屏保设置

屏保:毛雷尔玫瑰屏保

这一个生成毛雷尔玫瑰图形的屏保程序.毛雷尔玫瑰,也有的翻译是毛瑞尔,是一种很漂亮的数学图形,玫瑰线的变异品种.关于它的数学解释请看:数学图形(1.45)毛雷尔玫瑰(Maurer rose) 程序启动后,会随机生成不同的毛瑞尔玫瑰图形,点击鼠标或按下键盘任意按键会自动退出.使用鼠标滚轮滚动进行图形切换. 下载地址:http://files.cnblogs.com/WhyEngine/MaurerRoseSP.zip 双击"MaurerRoseSP.scr"可运行程序双击"Mau

取消Debian屏保及显示器休眠

在产品展示场合,屏保及休眠会带来不好的体验,很多时候需要关闭掉. dpms显示器休眠设置: 开启:$ sudo xset dpms 1 1 2取消:$ sudo xset -dpms xset设置屏保: 设置10秒后进入屏保:$ sudo xset s 10 600恢复系统默认值:$ sudo xset s 0 600取消屏保:$ sudo xset s off 测试发现取消屏保的指令不工作,所以可以投机取消一下,通过设置很大的时间值延缓屏保的到来:$ sudo xset s 99999 999

Android 系统设置中显示设置之休眠和屏保设置篇

Android 系统设置中显示设置之休眠和屏保设置篇 在上一篇中我们学习了Android系统设置中字体大小和屏幕旋转设置基本内容,在这一篇中我们继续学习显示设置中的休眠和屏保设置. 1.休眠设置 首先我们来看一下休眠设置在界面中的定义: 1 <ListPreference 2 android:key="screen_timeout" 3 android:title="@string/screen_timeout" 4 android:summary="

国土厅无盘XP系统,设置统一幻灯片屏保。

1.环境和需求: windows2003域控+winxp客户端,无盘环境. 要求所有客户端设置统一屏保,屏保为9张循环播放的图片. 2.分析 因为无盘镜像中没有这9张图片文件,如果用本地路径执行屏保,则需要对无盘镜像进行修改,太麻烦,所以只能使用网络路径. 3.步骤 3.1.设置组策略,让所有客户端屏保类型更改为幻灯片屏保 3.2.让客户端执行屏保时,使用网络路径中的图片,而不是从本地的图片收藏文件夹中找图片. 这一步比较麻烦,虽然可以将服务器网络路径中的屏保文件中配置成网络路径,但其实配置后客

Android4.0+锁屏程序开发——设置锁屏页面篇

[如何开发一个锁屏应用] 想要开发一个锁屏应用,似乎很难,其实并没有想象中那么难. 从本质上来说,锁屏界面也只是一个Activity而已,只是这个界面比较特殊,在我们点亮屏幕的时候,这个界面就会出现. 而且在此界面中,我们可以用一些行为来退出,比如点击按钮等. 还有一个特征是在这个界面的时候,我们通常是不能使用底部的三个按钮的 关于如果屏蔽底部的三个按钮,我已经在另一篇博客Android4.0+锁屏程序开发——按键屏蔽篇进行了总结,有需要的朋友可以参看. 这篇博客我们主要讨论如何让一个Activ