Comunidad de diseño web y desarrollo en internet online

Problema con campos nulos

Citar            
MensajeEscrito el 13 Feb 2012 03:00 pm
Hola a tod@s!

A ver si alguien más se ha topado con este problema y ha podido resolverlo :)

Dependiendo de una acción del usuario, tengo que cargar una ventana u otra. Estas 2 ventanas, cada una es un .mxml distinto, así que cuando ya se cuál tengo que cargar, creo una instancia de la misma. Sin embargo, cuando intento rellenar algún campo de esa nueva instancia, en concreto un label, ese label está como null.

La ventana de la que estoy creando la instancia es esta (InfoSubstancePanel.mxml). Es para mostrar la información de una sustancia que ha seleccionado el usuario.

Código Flex :

<?xml version="1.0" encoding="utf-8"?>
<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="468" height="383" title="Datos de la sustancia" initialize="initializing()">
   
   <mx:Script>
      <![CDATA[
      
         import Controllers.InfoSubstancePanelController;         
         import Model.ModelLocator;
         
         private var modelLocator:ModelLocator;
         private var controller:InfoSubstancePanelController;
            
         private function initializing():void
         {
            modelLocator=ModelLocator.getInstance();
            controller=new InfoSubstancePanelController();
         }         
         
      ]]>
   </mx:Script>
   
   <mx:Canvas width="100%" height="141" id="infoCanvas">
         <mx:Label x="10" y="10" text="Nombre" fontWeight="bold" fontSize="14" id="nameLbl"/>
         <mx:Text x="10" y="41" text="descripción&#xa;" id="descriptionText"/>
         <mx:Label x="10" y="88" text="Modelo matemático:" fontWeight="bold"/>
         <mx:Label x="150" y="88" text="modelo" id="mathModelLbl"/>
   </mx:Canvas>
   
   <mx:Canvas id="propertiesCanvas" x="0" y="149" width="100%" height="140"/>
   
   <mx:ControlBar horizontalAlign="right">
      <mx:Button label="Eliminar"/>
      <mx:Button label="Editar"/>
      <mx:Button label="Cerrar"/>
   </mx:ControlBar>
   
</mx:Panel>




y la instancia la creo así:

Código Flex :


var substancePanel:InfoSubstancePanel;

substancePanel=new InfoSubstancePanel();

substancePanel.nameLbl.text="el texto que quiero introducir"



Si alguien sabe cuál es el error, el por qué de que los labels de la ventana estén como nulos, o dónde puedo leer alguna información que me ayude a resolverlo se lo agradecería enormemente.

Saludos

Por marnan

8 de clabLevel



 

chrome
Citar            
MensajeEscrito el 14 Feb 2012 02:00 pm
Tienes que esperar al evento creationComplete del componente que estás instanciando para poder acceder a cualquier elemento interno

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 19 Abr 2012 12:05 pm
Gracias Solisarg, perdona que te haya respondido tan tarde, me lié y me despisté :S


Jjusto había estado buscando por ese lado y al final conseguí resolverlo :)

Por marnan

8 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.