Flex彈出窗口實現和子父Flex窗口的數據交換揭秘
在學習Flex的過程中,你可能會遇到Flex窗口的問題,這里和大家分享一下Flex彈出窗口的實現以及子父Flex窗口的數據交換,相信本文介紹一定會讓你有所幫助。
Flex彈出窗口的實現以及子父Flex窗口的數據交換
Flex里使用PopUpManager.createPopUp(parent,class,modal[,initobj,outsideEvents])創建父一個子Flex窗口,該函數的參數說明如下:
◆parent一個引用,引用彈出Flex窗口所在的Flex窗口。
◆class一個引用,引用要創建的對象的類。
◆modal一個布爾值,它表明該Flex窗口是(true)否(false)是模式的。
◆initobj一個包含初始化屬性的對象。此參數是可選的。
◆outsideEvents一個布爾值,指明在用戶單擊Flex窗口以外的區域時是(true)否(false)觸發事件。此參數是可選的。
其中,前三個參數是必須的,后兩個是可選的。第二個參數要和你的mxml文件名一致,第三個參數如果選擇是則不允許彈出Flex窗口沒關閉前操作父Flex窗口,反之則允許。
◆首先我們創建一個頁面,關鍵代碼如下:
- <mx:Buttonlabelmx:Buttonlabel="ShowWindow"click="showWindow(false)"width="150"/>
- <mx:Buttonlabelmx:Buttonlabel="ShowModalWindow"click="showWindow(true)"width="150"/>
- functionshowWindow(modal)
- {
- varpopup=mx.managers.PopUpManager.createPopUp(_root,login,modal,{deferred:true});
- }
然后我們創建一個TitleWindow,注意雖然也是mxml文件,但是它的定級元素不是Application而是TitleWindow,其余的地方和以前沒什么兩樣了。
◆下面介紹子父Flex窗口的數據交換。
當子Flex窗口被創建的時候父Flex窗口就獲得了一個子Flex窗口的實例,注意我用紅子標出的變量。我們可以用該變量引用子Flex窗口內定義的全局變量,例如我在子Flex窗口中做如下定義:varname:String="哈哈";。在父Flex窗口中可以使用popup.name引用該變量。
同樣,在子Flex窗口中我們可以使用"parent"來引用父Flex窗口中定義的變量,例如我在父Flex窗口中定義varage:String="24";。在子Flex窗口中可以使用parent.age引用這個變量。
【編輯推薦】