首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flex组件通信

Flex组件通信
EN

Stack Overflow用户
提问于 2010-02-15 16:56:39
回答 1查看 433关注 0票数 0

我使用从不同的MXML文件加载的弹出窗口:

代码语言:javascript
复制
private function showAddPopUp():void{
    addPopUP = PopUpManager.createPopUp(this, add_popup, true);
    PopUpManager.centerPopUp(addPopUP);
}

该文件如下所示(add_popus.mxml):

代码语言:javascript
复制
<mx:VBox width="100%" height="100%" paddingLeft="5" paddingTop="5" paddingRight="5" paddingBottom="5">
    <mx:Label text="Enter name of the source:" />
    <mx:TextInput width="100%" id="textName" />
    <mx:Label text="Enter URL for the source:" />
    <mx:TextInput width="100%" id="textURL" />
    <mx:HBox width="100%">
        <mx:Button label="OK" id="buttonOK" textAlign="center"/>
        <mx:Button label="Cancel" id="buttonCancel" click="PopUpManager.removePopUp(this)" textAlign="center"/>
    </mx:HBox>
</mx:VBox>

问题是,在弹出窗口中单击buttonOK之后,我不知道如何将文本输入中的文本值传递给主组件。我尝试了自定义事件,但它不起作用。文档不是很有帮助。我将感谢您的任何想法。

完整代码在这里:http://github.com/jbajor/Newspapair

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-15 17:40:27

从按钮单击中调度事件

代码语言:javascript
复制
<!-- AddPopUp.mxml -->
<mx:Button label="OK" id="buttonOK" textAlign="center" 
    click="dispatchEvent(new Event(POPUP_DONE))"/>
<mx:Script>
<![CDATA[
    public static const POPUP_DONE:String = "popupDone";
]]>
</mx:Script>

然后在另一节课上听。event.target将为您提供弹出窗口的句柄。

代码语言:javascript
复制
private function showAddPopUp():void
{
    var addPopUp:AddPopup = PopUpManager.createPopUp(this, add_popup, true);
    addPopUp.addEventListener(AddPopUp.POPUP_DONE, onPopupDone);
    PopUpManager.centerPopUp(addPopUP);
}
private function onPopupDone(e:Event):void
{
    var popup:AddPopUp = AddPopUp(e.target);
    trace(popup.textName.text);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2264803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档