2011-08-10 11 views

Respuesta

6

Puede acceder a datos popUp usando setter como muestra el ejemplo. O crea un componente emergente como global en tu aplicación principal para que puedas derivar las propiedades de los componentes de forma global.

<!-- 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> 
+0

Gracias @Jay por la respuesta con el código de muestra :) –

4
var popup:YourPopupWindow = PopupManager.createPopup(YourPopupWindow, true) as YourPopupWindow; 
popup.someData = yourData; 
+0

Hola @J_A_X, aquí somedata es una variable de aplicación principal o variable de ventana emergente personalizado. Lo siento, si es una pregunta tonta. –

+2

'someData' es una propiedad pública en YourPopupWindow. –

Cuestiones relacionadas