w3schools over event and flex actionscript-3 canvas mouseout

flex - over - onmouseout html image



Cómo detener el evento Mouse Out en el encendido de Flex Canvas para elementos secundarios (3)

Estoy usando un itemRenderer Canvas para un contenedor que uso para mostrar imágenes. Ver pseudo código a continuación.

image = new Image(); image.source = data.@thumb; this.addChild(image); this.addEventListener(MouseEvent.MOUSE_OVER, enlarge(image)); this.addEventListener(MouseEvent.MOUSE_OUT, shrink(image));

Cuando paso el mouse sobre el lienzo, se llama a la función de ampliación. Sin embargo, tan pronto como muevo el mouse sobre la imagen u otro elemento secundario, se desencadena el evento MOUSE_OUT.

¿Puede alguien señalarme una forma de desactivar este comportamiento?

Gracias :)


En su lugar, debería utilizar los eventos MouseEvent.ROLL_OVER y MouseEvent.ROLL_OUT .

De la documentación de Flash CS4:

Cuando el mouse ingresa al área de un objeto de visualización o al área de cualquiera de sus elementos secundarios desde un objeto que no es uno de sus elementos secundarios, el objeto de visualización distribuye el evento rollOver. Este es un comportamiento diferente al del evento mouseOver, que se envía cada vez que el mouse ingresa al área de cualquier objeto secundario del contenedor de objetos de visualización, incluso si el mouse ya estaba sobre otro objeto secundario del contenedor de objetos de visualización.


Estoy de acuerdo con Josh en que los eventos ROLL_OVER parecen más apropiados para lo que estás haciendo. Sin embargo, debe tener en cuenta la propiedad mouseChildren de flash.display.DisplayObjectContainer (un antecesor de UIComponent ).


Rollout funciona para mí. Acerca del problema de comboBox: también puede verificar si el objetivo del evento es un elemento secundario del contenedor.