air学习笔记:快速添加图标
来源:互联网 发布:海盗港湾软件工作室 编辑:程序博客网 时间:2024/05/16 07:48
package com.air{import flash.desktop.NativeApplication;import flash.desktop.SystemTrayIcon;import flash.display.BitmapData;import flash.display.Loader;import flash.display.NativeWindow;import flash.display.NativeWindowDisplayState;import flash.display.NativeWindowInitOptions;import flash.display.NativeWindowType;import flash.display.Stage;import flash.events.Event;import flash.events.MouseEvent;import flash.events.NativeWindowDisplayStateEvent;import flash.net.URLRequest;/** * 一个快速添加Icon 图标的类 */public class AirIcon{private static var iconImage:BitmapDataprivate static var nativeWindow:NativeWindow;public function AirIcon(){} /** * @param url 添加一个 图标链接 * @param nativeWindow 一个窗口引用 */ public static function addIcon(url:String,nativeWindow:NativeWindow):void { AirIcon.nativeWindow=nativeWindow; var loader:Loader=new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadCompleteFun); loader.load(new URLRequest(url)); nativeWindow.addEventListener(NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGE, onMinWindowStateHandler); } private static function onLoadCompleteFun(event:Event):void { event.currentTarget.removeEventListener(Event.COMPLETE, onLoadCompleteFun); iconImage=event.currentTarget.content.bitmapData; if (NativeApplication.supportsSystemTrayIcon) { SystemTrayIcon(NativeApplication.nativeApplication.icon).addEventListener(MouseEvent.CLICK, onActiveWindow); NativeApplication.nativeApplication.icon.bitmaps=[iconImage]; } } private static function onMinWindowStateHandler(event:NativeWindowDisplayStateEvent):void { if(event.afterDisplayState==NativeWindowDisplayState.MINIMIZED) { minWindow(); } } private static function minWindow():void { nativeWindow.visible=false; NativeApplication.nativeApplication.autoExit = false; NativeApplication.nativeApplication.icon.bitmaps=[iconImage]; } private static function onActiveWindow(event:MouseEvent):void { nativeWindow.restore(); nativeWindow.visible=true; nativeWindow.orderToFront(); NativeApplication.nativeApplication.icon.bitmaps=[]; } }}
这段时间经常做Air 的相关的小工具,大量的重复的代码有时候想懒惰一下,添加上这个快速添加图标的方法,同时还支持缩小和打开窗口的内容,算是一个比较简单的方法,做一些简单实验比较快速。
方法如下
AirIcon.addIcon("image/16x16.png",nativeWindow);
- air学习笔记:快速添加图标
- FLEX AIR添加系统托盘图标步骤
- air 学习笔记:air调用jsfl
- air 学习笔记:air 批量重命名文件
- air学习笔记:最小化事件
- air 学习笔记:读取文件
- MFC学习笔记(5)——添加托盘图标
- 【Adobe AIR学习笔记】打包、签名、运行AIR应用程序
- 【Adobe AIR学习笔记】Adobe AIR 3新特性
- air 学习笔记:bat 调用air 传递参数 打包
- Air实现托盘图标
- 【转自CBM】AIR拖放学习笔记
- flash Air 开发学习笔记(一)
- flash Air 开发学习笔记(一)
- AIR/Flex学习笔记(1)
- AIR/Flex学习笔记(2)
- AIR/Flex学习笔记(3)
- AIR/Flex学习笔记(4)
- 岁月无痕,那些牛人的部落格
- SE-需求分析
- 菜鸟的学习之路(12) —HashSet类详解
- SQLite文件数据库、内存数据库建立及导入导出
- 解析 STM32 的启动过程(写的不错)
- air学习笔记:快速添加图标
- 淘宝应对"双11"的技术架构分析
- STL容器知识积累
- 树
- cf-279E - Beautiful Decomposition-贪心
- Linux 信号signal处理机制
- Combination Sum II
- floyd 算法
- Ubuntu启动问题以及Grub Rescue修复方法