Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Flash y Actionscript (http://www.forosdelweb.com/f16/)
-   -   Ejecutar funcion que esta en el principal desde un componente (http://www.forosdelweb.com/f16/ejecutar-funcion-que-esta-principal-desde-componente-559322/)

chelovip 21/02/2008 16:17

Ejecutar funcion que esta en el principal desde un componente
 
Mensaje Autor
Publicado: Jue Feb 21, 2008 7:35 pm Citar Borrar

El archivo principal tiene un viewstack
que tiene 2 canvas
cada canva abre un componente (le llamo componente pero no se si es así, está en otro archivo)
un canvas abre un tileList un thumbNails de fotos
el otro canvas tiene la foto en grande

cuando hago doble click en la fotito del tileList necesito que abra el 2do canvas con la foto grande

el problema que tengo es que a la funcion la tengo en el archivo principal y a la acción la tengo que hacer desde el componente y obviamente no la reconoce.
no se como hacer para que lo reconozca.

Por otro lado, yo uso componentes o como se llame, como sería posible hacer esto mismo pero que abra en vez de diferentes componentes, que abra diferentes SWF.

El problema no sería abrir, sino desde dentro del SWF ejecutar la acción para que me muestre el otro canvas

luego el tema de pasar variables entre componente y/o archivos diferentes creo que debe estar relacionado.

Este tema me preocupa porque no se cual es la mejor manera para hacer este tipo de cosas, existe alguna documentación para entender bien este tipo de asuntos

Gracias.

Código:

<mx:ViewStack id="viewstack1" width="100%" height="100%">     

    <mx:Canvas label="View 1" width="100%" height="100%">
        <explorer:thumbPanel id="swfThumb" width="100%" height="100%"/>
    </mx:Canvas>             

    <mx:Canvas label="View 1" width="100%" height="100%">
        <explorer:loaderPanel id="swfLoader" width="100%" height="100%"/>
    </mx:Canvas>

</mx:ViewStack>



el archivo o componente o como se llame: (thumbPanel.mxml)



<?xml version="1.0" encoding="utf-8"?>

Código:

<mx:Panel xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%">
  <mx:VBox width="100%" height="100%">
      <mx:TileList width="100%" height="100%" rowHeight="280" columnWidth="210"
          doubleClickEnabled="true"  doubleClick="cambiarCanvas()"
          id = "tile" itemRenderer="Thumbnail"/>
      <mx:HBox width="100%">
              <mx:Button label="Upload Images"/>
              <mx:Button label="Delete Images"/>
              <mx:Button label="Save Order"/>
              <mx:Button label="Show Image"/>
        </mx:HBox>
  </mx:VBox>
</mx:Panel>



esta es la función que yo necesitaría poner en el archivo principal
doubleClick="cambiarCanvas()"

bueno, creo que se entendió el problema

seyacat 13/03/2008 16:03

Re: Ejecutar funcion que esta en el principal desde un componente
 
No tengo mucha experiencia en Flex, pero hice una app con formularios de ingreso y egreso, en donde el principar cargaba todo por MODULOS.

Lo que tengo entendido pues es que los modulos se presentan como archivos aparte, mietras los componenetes se embeben en el SWF.

Bueno, para una funcion en el swf padre solamente usas

parentApplication.tufuncion()

para hacer la inversa es un poco mas complicado.

master_of_puppetz 25/03/2008 12:06

Re: Ejecutar funcion que esta en el principal desde un componente
 
puedes acceder a cualquier función o componente usando la clase Application:
Código:

Application.application.tu_funcion();


La zona horaria es GMT -6. Ahora son las 19:05.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.