Flex 4 NativeWindow 中添加Flex组件(问题很多,尚不完善)

由于项目组的需要,老大分配让我做一个Flex程序的UI处理,关于几个Window重叠的时候,如何让一些工具Window永远在主窗口上方呢?

最早的时候同事使用alwaysInFront,但这样做的话,其他软件的窗口就会受到干扰。

Window本身又不对外开放nativeWindow的owner属性,或者说NativeWindow一旦new了之后就无法修改owner属性。

所以今天尝试用NativeWindow和NativeWindowInitOptions来自己做一个窗口。

遇到不少麻烦,早上试了一个博主转载的某个方法(见http://blog.csdn.net/huanghr_1/article/details/6422950最后),其实是不可行的。

因为只是DateChooser可以,一旦加入其他控件就会出错,或者DateChooser本身点多几下也会出错。因为NativeWindow好像没有布局啊,onFocus之类的处理。

又继续找,找到了一个外国佬封装的ExtendedNativeWindow,原理就是针对出错的原因(缺少_systemManager: WindowedSystemManager),自己封装一个给nativeWindow。

稍稍试了一下,对于部分控件来说是可行的。

但例如有scroller或者textarea就会出错。

反正就是悲催~~~暂时没找到更好的办法了。

上代码:Flex4_NativeWindowExample.zip

posted @ 2011-08-09 17:44  拂晓风起-Kenko  阅读(707)  评论(0编辑  收藏  举报