Comunidad de diseño web y desarrollo en internet online

Alcance de Variables en AS3

Citar            
MensajeEscrito el 20 Sep 2008 08:55 pm
Hola, estoy realizando una web con flash y AS3.

Me he dado cuenta de que al asiganarle el document class a mi .fla solo puedo accerder a los objetos del fla (MovieClip) que se encuentran en el primer fotograma, y la verdad necesito acceder a MovieClips que se encuentran en el segundo y tercer fotograma,, no se como pueda hacerlo la verdad me gustaria que me puidiran ayudar.


Gracias!! :)

Por kakashysen

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Sep 2008 10:26 am
Para poder acceder a los elementos, tienes que estar en ese fotograma, al igual que cuanto tenías tu code desparramado en lalínea de tiempo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Sep 2008 02:03 pm
ok, gracias.

Tengo otra dudo o mejor otro problemita, resulta que estoy utilizando flex para crear una aplicacion en la que debe llenar un combobox con informacion de la base de datos que esta en prostgres, bueno hasta ahi todo bien , ya logre hacerlo, esto lo hago con ayuda de weborb y remoteObject.

Para que mi codigo este mas organizado y poder reutilizarlo en otras cosas de esta misma aplicacion, cree un Componte en flex el cual me genera un combobox, lleno con la info de la base de datos, para luego llamarlo desde otro Componente y este ultimo si es llamado en al Application , este componente tiene un metodo publico que lo que hace es consultar la base de datos y cargar la info dentro del dataProvider del combobox,hasta aca todo bien:
Entonces resulta que yo necesito actualizar el combobox en un momento determinado, y pues lo que hices es que creo un boton en el Componente donde llamao al Componente combobox que cree y le asigno un evento que lo que hace es llamar por medio del id del combobox la funcion publica que cree para llenar el comobobox,

El propblema es que ahy me esta sacando un error algo asi como que no encuentra el php que debe consultar para hacer el query, pero la cosa es que si esta funcionando porque cuando inicio la aplicacion el combobox se carga con la info correspondiente , pero cuando trato de recargarlo por medio del boton que cree sale un error..

Por kakashysen

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Sep 2008 02:08 pm
Posiblemente el método este fuera de scope (si el botón apunta en el click al método en Application) Postea lo código del botón y el error que te sale

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Sep 2008 04:24 pm
Codido del Componente que esta en

src - > components - > combocomponents
[color=]

Código :

<mx:ComboBox xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init();"
   labelField="nombre">
   <mx:Script>
      <![CDATA[
         import mx.rpc.events.FaultEvent;
         import mx.rpc.events.ResultEvent;
         import mx.controls.Alert;
         
         public function init():void
         {
            remoteProducto.getAllRows();
         }
         
         private function error(e:FaultEvent):void
         {
            Alert.show(e.fault.message,'Error! O_o');
         }
         
         private function getProductos(e:ResultEvent):void
         {
            this.dataProvider = e.result;
         }
         
      ]]>
   </mx:Script>
   
   <mx:RemoteObject id="remoteProducto"
   destination="GenericDestination"
   source="sistemarossi.dao.ProductoDAO"
   showBusyCursor="true"
   result="getProductos(event)"
   fault="Alert.show(event.fault.message,'Error! O_o')"/>
   
   
</mx:ComboBox>



Codigo del Componenete que llama al Componente anterior

Este se encuentra en:

src - > components

Código :

<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" label="Producto"
   xmlns:comp="comboComponents.*" xmlns:comboComponents="components.comboComponents.*">
   
   <mx:Script>
      <![CDATA[
         import mx.messaging.AbstractConsumer;
         import mx.rpc.events.ResultEvent;
         import mx.controls.Alert;
                  
         import mx.events.ValidationResultEvent;
         

         private function insertProducto():void
         { 
            
            var nombre:String = text_nombre.text;
            var medida:int = list_medidas_crear.selectedItem.id;
            var clase:int = list_clases_crear.selectedItem.idclase;
            var desc:String = text_descipcion.text;
            
            remoteProducto.insert(nombre,medida,clase,desc);
         }
         
   
         
         private function reloadpage():void
         {
            var ref:URLRequest = new URLRequest("javascript:location.reload(true)");
            //var ref:URLRequest = new URLRequest(this.);
         //   navigateToURL(ref, "_self");
            var u:URLRequest = new URLRequest();
            Alert.show(ref.requestHeaders.toString(),"la url");
         }
         
              //Esta es la funcion que llamo para recargar el combobox
                       private function recargarCombo():void
         {
            list_productos_edit.init();
         }
         
         private function buscarProductoEdit(e:MouseEvent):void
         {
            text_nombre_edit.text = list_productos_edit.selectedItem.nombre;
            list_medidas_edit.selectedIndex = list_productos_edit.selectedItem.nombre;
            Alert.show(list_productos_edit.selectedItem.idproducto,"medida");
            list_clases_edit.selectedItem.idclase = list_productos_edit.selectedItem.idclase;
         }
         
      ]]>
   </mx:Script>
   
   <mx:RemoteObject id="remoteProducto"
   destination="GenericDestination"
   source="sistemarossi.dao.ProductoDAO"
   showBusyCursor="true"
   result="Alert.show(event.result.toString(),'Exito!! insertando');"
   fault="Alert.show(event.fault.message,'Error! O_o')"/>
   
   


   
   <mx:TabNavigator id="producto" width="100%" height="100%" change="tab(event);">

      <!-- TAB EDICION DE PRODUCTO -->
      <mx:Panel id="edit" label="Editar" layout="horizontal">
      <mx:VBox>
         <mx:Form>
         <mx:FormHeading label="Edicion de Productos"/>
               
            <mx:FormItem label="Nombre:" required="true" >
               <mx:TextInput id="text_nombre_edit"/>
            </mx:FormItem>
   
            <mx:FormItem label="Medidas:">
               <comboComponents:ComboMedidas id="list_medidas_edit"/>
            </mx:FormItem>
   
            <mx:FormItem label="Clases:">
               <comboComponents:ComboClases id="list_clases_edit" />
            </mx:FormItem>
            
            <mx:FormItem label="Descripcion">
               <mx:TextArea id="text_descipcion_edit" width="160" height="100"/>
            </mx:FormItem>
            
            <mx:FormItem >
               <mx:Button id="btn_edit" label="Editar" click="editProducto();" enabled="false"/>
            </mx:FormItem>
         </mx:Form>
         </mx:VBox>
         
         
         <mx:Form>
         <mx:FormHeading label="Buscar Producto"/>
         <mx:HBox>
            
            <mx:FormItem label="Buscar:">
                                       //LLAMADO AL COMPONENTE COMBOBOX
               <comboComponents:ComboProductos id="list_productos_edit"  />
            </mx:FormItem>
            <mx:FormItem>
//boton para recarar el combobox que cree
            <mx:Button id="btn_buscar_edit" label="Buscar" click="recargarCombo()"/>
            </mx:FormItem>
         </mx:HBox>
         </mx:Form>
         
      </mx:Panel>
      
      
   </mx:TabNavigator>

</mx:Canvas>



Y este es el Application que esta en:

src

Código :

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" 
   xmlns:comp="components.*" backgroundColor="#FFFFFF">
   
   <mx:Script> 
      <![CDATA[ 
         import mx.rpc.events.ResultEvent;
         import mx.controls.Alert;
         import mx.rpc.events.FaultEvent;
         import mx.rpc.remoting.mxml.RemoteObject;
         import util.MyRemoteObject; 
          
         private function init():void  
         {
            var ro:RemoteObject = new RemoteObject("GenericDestination");
            ro.source = "prueba.clases.UsuarioService";
            ro.addEventListener(FaultEvent.FAULT, onFault);
            ro.addEventListener(ResultEvent.RESULT, onResult);   
         }
         
         private function onFault(e:FaultEvent):void
         {
            Alert.show(e.fault.toString(),"Error");
         }
         
         private function onResult(e:ResultEvent):void
         { 
            Alert.show(e.result.toString(),"Exito");   
         }
      ]]>
   </mx:Script> 
   <mx:Panel title="Panel Administrativo SistemaRossi" width="100%" height="100%" top="10" left="150" right="150" bottom="10">
      
     
   <mx:TabNavigator width="100%" height="100%" top="10" left="10" right="10" bottom="10">
      
      <comp:Producto width="100%" height="100%"/>
      <comp:Proveedor width="100%" height="100%"/>
      
   </mx:TabNavigator>
   
      
   </mx:Panel>
   
</mx:Application>
[size=]


Y por ultimo esta el error que me sale cuando le doy click en el boton buscar que llama al metodo reloadCombo();

faultCode:Channel.Call.Failed faultString:'error' faultDetail:'NetConnection.Call.Failed: HTTP: Failed'

espero que se entienda y me pueda ayudar!! :(

Por kakashysen

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Sep 2008 05:16 pm
HOOOOO!!!!....
que pena ponerme con todo eso, ya logre solucionar el problema perdon la molestia , tenia un error en el php que llamo... jijijijij...


gracias de todas formas por la ayuda Jorge.! :D

Por kakashysen

16 de clabLevel



 

firefox

 

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