快速业务通道

AIR的窗口外观修饰

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-07

这个教程主要针对flex有一定基础,准备开始AIR开发的朋友。由于AIR是针对桌面应用程序,所以相对于flex的web应用,自然就多出了对应用程序窗口的控制。而AIR的一大特点就是允许开发者使用自定义的窗口代替系统窗口从而使开发者对程序UI的设计更加随心所欲,设计出独具个性风格的跨平台的桌面应用程序。 罗嗦的话到次为止,下面正式开始主题,本教程主要实现了以下功能。 1. 屏蔽系统窗口、 Flash窗口、窗口底部状态栏。使用自定义窗口。
2. 对自定义窗口的缩放、移动、关闭。 在实现以上操作的过程中,我加入了一些额外的操作来丰富我们的demo,都是很简单,很实用的东西。 3. 移动窗口时实现半透明效果,移动结束时还原。
4. 关闭窗口动画。
5. 窗口背景填充。 1、屏蔽系统窗口,flash窗口,窗口底部状态栏。使用自定义窗口。 当一个AIR项目创建成功后,你会发现相对与 web项目,你的工程目录下多了一个名为 XXX-app.XML的文件,这是我们项目的配制文件,实现自定义窗口就是靠它。打开它,修改如下代码: <!–Thetypeofsystemchrometouse(either“standard”or“none”).Optional.Defaultstandard.–>
<!–<systemChrome></systemChrome>–> 去掉对systemChrome的注释,改为 <!–Thetypeofsystemchrometouse(either“standard”or“none”).Optional.Defaultstandard.–>
<systemChrome>none</systemChrome> 这样我们就去掉了系统窗口,转而使用了flash的自带窗口,下面我们把flash窗口也去掉。在你的主mxml文件中设置WindowedApplication 的这些属性 <mx:WindowedApplicationshowTitleBar=”false”borderThickness=”0″showStatusBar=”false”showGripper=”false”…../> 这样就完全去掉了所有的窗口,程序运行后只显现应用程序的内容。大家可以参考帮助手册来了解以上属性的意思。说到这里就引出了下一个问题,屏蔽了所有窗口以后如何对窗口进行基本的,放大,缩放,关闭操作呢。我们看下面。 2、对自定义窗口的缩放,移动,关闭。 AIR比flex web应用多了一个类叫NativeWindow,我们就是靠这个类对窗口就行操作。在demo中,我用了以下几个方法来移定窗口,他们都在鼠标MouseDown event中被触发。 this.nativeWindow.startResize(”L”);
this.nativeWindow.startResize(”R”);
this.nativeWindow.startResize(”T”);
this.nativeWindow.startResize(”B”);
this.nativeWindow.startResize(”TL”);
this.nativeWindow.startResize(”RB”); 很容易可以看出,L R B T代表 Left, Right, Bottom 和 Top, 所以在调用startResize时设置适当的参数我们就可以轻易的实现对窗口各个方向的缩放。对于窗口的移定,在mouseDown event中使用 this.nativeWindow.startMove(); 而对窗口的关闭,则很简单的在按钮click事件调用this.close()。 好了,以上就是对自定义窗口的操作。下面的东西我是用来完善我的demo,使它cool一点。相信大家在自己的应用程序中也会需要类似的东西,一个应用程序除了功能,细节上的处理也是很重要的。 3、移动窗口时实现半透明效果,移动结束时还原。 要实现这个效果我们需要重新打开我们的XXX-app.xml文件,设置以下内容。

这个可以允许我们让应用程序的背景透明,这个很有用,比方说QQ宠物就是一个背景透明的应用程序,利用背景透明,我们可以开发出很独特的应用程序。接下来要做的就简单了。 <!&ndas

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号