Comunidad de diseño web y desarrollo en internet online

Eventos componente

Citar            
MensajeEscrito el 14 May 2007 10:01 am
Hola,

me he creado un componente en flex, y lo estoy añadiendo a un VBox mediante codigo.
El problema que tengo es que los eventos que genera ese componente no lo escucha la aplicación y no puedo manejarlos (por ejemplo, que haciendo click en el componente la aplicación pase de un state a otro) .

Me gustaria saber si hay alguna manera de que un componente pueda pasar eventos y como manejarlos.

Un saludo

Muchas gracias

Por mondymaster

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 15 May 2007 01:59 pm
Una opción seria que asignes el evento directamente en la aplicación padre. Supongamos que el id del componente es "myComponent" y el id del VBox es "myVBox", para asignar el evento desde la aplicación padre podrías hacer:

Código :

  funcion initApp():void
  {
      myComponent.myVBox.addEventListener(MouseEvent.CLICK, clickHandler);
  }

  function clickHandler(event:Event):void
  {
      Alert.show("Presionaste "+event.target, "Alerta");
  }


Ahora para solo basta llamar a initApp cuando ejecutes el swf para ello coloca en la etiqueta <mx:ApolloApplication> del mxml padre el evento creationComplete(función_a_llamar), ejemplo:

Código :

<mx:ApolloApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()">

Por shogoki

355 de clabLevel

4 tutoriales

 

Venezuela

firefox
Citar            
MensajeEscrito el 16 May 2007 12:01 am
Dispatchas el evento(DispatchEvent), o cómo la haces?

Con el dispatch, no deberías tener problema

saludos

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 16 May 2007 09:58 pm
Ya lo he conseguido. Muchas gracias por las respuestas!!

Al final lo consegui, haciendo el DispatchEvent del new event que me he creado. Todo esto es en el componente, donde es necesario poner una etiqueta metadata con el nombre del evento dentro.

Después es añadir el listener al padre y voilá

Saludos

Por mondymaster

1 de clabLevel



 

firefox

 

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