Archive for May, 2008

AIR NativeWindow 试用~

周末尝试着把淘宝试衣间转成AIR,其中涉及到AIR的一些NativeWindow对象知识

下面简单介绍下air的原生窗口对象(NativeWindow)的使用

窗口属性

每个AIR应用的发布设置里都会有3种窗口样式供选择:

默认的系统镶边:显示传统的应用程序边框,包括最小化、最大化、关闭按钮,背景不透明。

自定义镶边(不透明):不显示系统边框,背景不透明

自定义镶边(透明):不显示系统边框,背景透明

这些设置实质上是给AIR初始NativeWindow设置了对应的参数。

我们在应用程序内部动态创建NativeWindow的时候,可以通过NativeWindowInitOptions对象来改变窗口的属性,

其中包括是否透明,是否显示系统边框,窗口类型等等。NativeWindow对象本身含有标题、大小等属性,代码如下

var options:NativeWindowInitOptions = new NativeWindowInitOptions();
    options.transparent = false;
    options.systemChrome = NativeWindowSystemChrome.STANDARD;
    options.type = NativeWindowType.NORMAL;
   
    //create the window
    var newWindow:NativeWindow = new NativeWindow(options);
    newWindow.title = “A title”;
    newWindow.width = 600;
    newWindow.height = 400;

窗口控制

NativeWindow 的orderToFront() 、orderInFrontOf()、orderToBack()等方法可以控制窗口在桌面中的显示层次,

activate()、close()、可以激活和关闭窗口,maximize()、minimize()最大化最小化窗口。

窗口事件

activate 当窗口得到焦点的时候抛出事件
deactivate 当窗口失去焦点的时候抛出事件
closing 当窗口即将关闭的时候抛出事件,(只有在系统边框上关闭按钮被按下的时候才才抛出)
close 当窗口关闭的时候抛出事件
moving 当窗口左上角即将产生位移前抛出事件,(移动、缩放、改变窗口形态都可能).
move 当窗口左上角产生位移时抛出事件
resizing 当窗口即将产生高度或者宽度变化时.
resize 当窗口产生了高度或者宽度变化时
displayStateChanging 显示状态即将改变时
displayStateChange 显示状态改变后

详细的NativeWindow参考手册请参阅Adobe的官方手册 http://livedocs.adobe.com/air/1/devappsflash/

点击下载淘宝试衣间AIR

Comments