Air NativeWindow和Window的区别

在Air程序中新建Window遇到一些问题,在网络中搜寻帮助之间。看到一篇名为Air的NativeWindow和Window的区别的博客,由此想记录两句。

本文作为一个笔记,用以后继自己查阅帮助使用,同时也是一个求教问题的文章,希望高手能帮我解答,问题在最后,非常感谢

 

在网络中经常见到说NativeWindow不能addChild  Flex组件,此种说法是错误的,NativeWindow并非不能addChild Flex组件,而是NativeWindow   addChild()之后,被add的child并不会被创建,组件虽然new出来了,可是不会被创建。也就是说已经被创建完成的组件是可以被add到NativeWindow中去的。

解决方案:new一个组件,把之PopUp出来, 等待其创建完成再add到NativeWindow中,就可以实现显示了。

但不推荐使用NativeWindow。

 

Flex提供了一个高级的窗口类mx.core.Window,此类是对NativeWindow的进一步封装。Window类实际就是一个WindowedApplication相同的概念,本身具有显示和创建功能,所以被add到Window中的组件会自动被创建完成。 

 

Window具有WindowedApplication相同的属性和样式,在前文提到的博客中,说到Window有边框,不想要任何镶边,可以使用window.setStyle("showFlexChrome",false)解决。

  

 Window.addChild()  的Flex组件最好是新new出来的,而不是在先前的WindowedApplication中实例化并创建,通过先去的parent.removeChild()后在Window.addChild(),会造成和此child对应的Application不是新创建的window,child中的弹出内容会继续在原窗口中弹出,比如toolTip就无法再新window中显示,而是显示在了WindowedApplication中。新new出来的组件add到window就可以避免这样的问题,PopUpManager,Alert弹出的时候,parent需要指向弹出窗口的内容,否则也会弹出到WindowedApplication中

 

目前还有一个问题没有得到解决:无法改变鼠标,通过cursorManager.setCursor,改变的鼠标无法显示。哪位高人知道怎么解决,求教了,非常感谢

 

 

 

转载于:https://www.cnblogs.com/anfeind/archive/2011/03/01/1967846.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
demo版本所展示的部分功能: 1、创建窗口 2、设置窗口宽高,标题 3、拖拽边缘缩放窗口,拖拽窗口 4、双击顶端的标题栏,最大化和缩放 5、实现不同的窗口机制 等等……………… core核心包结构初略讲解: IWindow接口:定义所有窗口,并且Window实现了该接口 Module类:模块基类 PopModule类:弹出型环境类,继承Module PopWindow类:弹出型窗口,继承Window Window类:窗口基类 WindowEvent类:窗口事件类 WindowsManager类:窗口管理基类 core核心包实现讲解: 凡是flash cs3中继承Module的元件,都可以直接在元件的第一帧撰写代码,并且在编译的过程中自动把代码编译出来并继承Module类,在第一帧所拽写的代码可以通过实例化后来访问,比如下面贴出的"控制台源码"就是如此写的 如果需要提供特殊环境等,可以继承Module撰写,比如PopModule,控制台的父类就是PopModule,在控制台的源码中,我们可以看得到他直接访问了window属性,得到的就是控制台所在的窗口对象 Window类实现了基本窗口操作,比如拖拽,关闭,显示等,与WindowManager是配套使用 如果需要更复杂的窗口,可以继承Window类撰写,比如PopWindow,FixedWindow类的父类就是PopWindow,在FixedWindow中,我们只需要把PopWindow的状态和模式定死在window和fixed就可以了,而PopWindow本来就是一个普通的窗口,因此创建Create窗口的时候,直接使用PopWindow即可创建一个普通的窗口,在PopWindow中,默认窗口的状态和模式都为window 核心包是另外一个公司做的。核心代码是反编译过来的。代码经过测试能正常运行。 此代码仅供学习,请勿传播。 flash版窗体系统demo观看地址:http://www.xiaos8.com/uploads/flash/window.swf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值