Как передать и получить значения во всплывающее окно во Flex? - PullRequest
5 голосов
/ 10 августа 2011

Я хочу отправить некоторое текстовое значение в мое пользовательское всплывающее окно, когда оно всплывает из основного приложения, имеющего некоторый текстовый ввод, а также я хочу знать, как извлечь данные (текстового ввода), которые были введены пользователем во всплывающем окне окно. Любая помощь приветствуется.

Ответы [ 2 ]

6 голосов
/ 10 августа 2011

Вы можете получить доступ к всплывающим данным с помощью установщика, как показано в примере.Или сделайте всплывающий компонент глобальным в своем основном приложении, чтобы вы могли ссылаться на свойства компонента глобально.

<!-- TitleWindow.mxml -->
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009" 
            xmlns:mx="library://ns.adobe.com/flex/mx" layout="absolute" width="600" title="" height="160">

<fx:Script>
       <![CDATA[            

           public function get UserTypedData():String
           {
                return tiSomeText.text;
           }
    ]]>
</fx:Script>

<fx:Declarations>
    <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<mx:TextInput id="tiSomeText" x="76" y="101"/>

<!-- Application.mxml -->
<mx:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
            xmlns:mx="library://ns.adobe.com/flex/mx" layout="absolute" width="100%" >

<fx:Script>
    <![CDATA[                           
                public var popup:YourPopupWindow;

                private function createPopUp():void
                {
                    popup = YourPopupWindow(PopUpManager.createPopUp(this, YourPopupWindow, false));
                }

                private function getPopUpData():String
                {
                    var retVal:String = "";

                    if (popUp != null)
                    {
                        // get data from setter
                        retVal = popUp.UserTypedData();
                        // of from TextInput
                        retVal = popUp.tiSomeText.text;
                    }

                    return retVal;   
                }

    ]]>
</fx:Script>
</mx:Application>
4 голосов
/ 10 августа 2011
var popup:YourPopupWindow = PopupManager.createPopup(YourPopupWindow, true) as YourPopupWindow;
popup.someData = yourData;
...