分享

弹出窗口的实现以及子父窗口的数据交换

 WindySky 2007-04-22

Flex里使用PopUpManager.createPopUp(parent, class, modal [, initobj, outsideEvents])创建父一个子窗口,该函数的参数说明如下:
parent 一个引用,引用弹出窗口所在的窗口。
class 一个引用,引用要创建的对象的类。
modal 一个布尔值,它表明该窗口是 (true) 否 (false) 是模式的。
initobj  一个包含初始化属性的对象。此参数是可选的。
outsideEvents  一个布尔值,指明在用户单击窗口以外的区域时是 (true) 否 (false) 触发事件。此参数是可选的。
其中,前三个参数是必须的,后两个是可选的。第二个参数要和你的mxml文件名一致,第三个参数如果选择是则不允许弹出窗口没关闭前操作父窗口,反之则允许。

  首先我们创建一个页面,关键代码如下:
<mx:Button label="Show Window" click="showWindow(false)" width="150"/>
<mx:Button label="Show Modal Window" click="showWindow(true)" width="150"/>
function showWindow(modal)
{
    var popup = mx.managers.PopUpManager.createPopUp(_root , login , modal, {deferred: true});
}

  然后我们创建一个TitleWindow,注意虽然也是mxml文件,但是它的定级元素不是Application而是TitleWindow,其余的地方和以前没什么两样了。

  下面介绍子父窗口的数据交换。

  当子窗口被创建的时候父窗口就获得了一个子窗口的实例,注意我用红子标出的变量。我们可以用该变量引用子窗口内定义的全局变量,例如我在子窗口中做如下定义:var name:String = "哈哈";。在父窗口中可以使用popup.name引用该变量。

  同样,在子窗口中我们可以使用"parent"来引用父窗口中定义的变量,例如我在父窗口中定义var age:String="24";。在子窗口中可以使用parent.age引用这个变量。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多