En una aplicación FLEX, trato de "volver a enviar" un evento personalizado. Es decir. component1 no dispatchEvnet (event), component2 registra un controlador para el evento, la única función del controlador es, de nuevo, dispatch (event). Finalmente, el componente 3 escucha el evento que sale del componente2. Lo que trato de hacer es similar al concepto de excepciones de "relanzamiento" (y por razones similares). La diferencia es que el reenvío no parece funcionar en AS3 (Flash 10). En IE, no pasa nada, y en FF3 hay una excepción que dice que el tipo de conversión falló al tratar de forzar el tipo de evento a mi evento CustomEvent al llamar al controlador en component3. El código de seguimiento en el depurador muestra que cuando se llama al componente3, el evento es, de hecho, uno genérico, con todas mis cosas personalizadas perdidas. ¿Se supone que es el caso?Evento de reenvío en FLEX
Respuesta
El problema que está experimentando se debe a que no se anuló el evento clone() en su evento personalizado.
Cuando los eventos se redistribuyen, se clonan y modifican. Si no anula clone() obtendrá la implementación base de clone(), que devuelve un evento. Como Event no se puede convertir a su tipo de evento personalizado, se genera un error de tiempo de ejecución.
De la documentación:
Al crear su propia clase personalizada de eventos, debe reemplazar el método heredado Event.clone() a fin de que para duplicar las propiedades de la clase personalizada. Si no establece todas las propiedades que agrega en su subclase de eventos, esas propiedades no tendrán los valores correctos cuando los oyentes manejen el evento redispatched.
más información, véase: http://casario.blogs.com/mmworld/2006/08/the_clone_metho.html
- 1. Flex 4: Evento de cambio de estado
- 2. Reenvío de argumentos en LLVM
- 3. Reenvío de puertos
- 4. Flex: al ocultar componentes en Flex
- 5. Barra de reenvío en Wordpress URL
- 6. ssh reenvío de puertos (tunelización) en linux
- 7. Reenvío de puertos en Windows 7
- 8. Impedir el reenvío de formularios
- 9. Jersey URL reenvío
- 10. .NET Reenvío de puertos SSH
- 11. Flex - Problema con ResizeEvent.RESIZE
- 12. Flex 4 Scroller
- 13. Flex Multipart Upload Progress
- 14. Flex: DeepCopy de FileReference
- 15. Unidad de prueba Controladores de eventos Flex
- 16. Cómo manejo el evento click en el control Spark List en Flex 4
- 17. ¿Cómo reenvío declarar HANDLE? (Win32)
- 18. Singleton clase en Flex
- 19. Colecciones en Adobe Flex
- 20. StringBuilder en Flex
- 21. Pruebas unitarias en flex
- 22. Datagrids en Flex Mobile
- 23. Registro de producción en Flex
- 24. código konami en flex
- 25. Historial de HTML5 que deshabilita el botón de reenvío
- 26. ¿Cómo funciona Skype sin reenvío de puertos?
- 27. ssh El reenvío de X11 no funcionará
- 28. Reenvío perfecto: a través de funciones virtuales
- 29. reenvío rápido de una canción usando AVAudioPlayer
- 30. Reenvío de puertos (NAT UPNP) ERROR