子要素のために発射Flexのキャンバスの上にマウスアウトイベントを停止する方法
-
05-09-2019 - |
質問
私は画像を表示するために使用するコンテナのキャンバスのitemRendererを使用しています。以下の擬似コードを参照してください。
image = new Image();
image.source = data.@thumb;
this.addChild(image);
this.addEventListener(MouseEvent.MOUSE_OVER, enlarge(image));
this.addEventListener(MouseEvent.MOUSE_OUT, shrink(image));
私はキャンバスの上にマウス、拡大関数が呼び出されたとき。しかし、すぐに私は画像の上にマウス、または他の子要素を移動すると、MOUSE_OUTイベントが開始されます。
誰もがこの動作を無効にする方法の方向に私を指すことができますか?
ありがとう:)
解決
あなたは MouseEvent.ROLL_OVER
使用する必要がありますA>と MouseEvent.ROLL_OUT
のイベントその代わります。
のFlash CS4のドキュメントから:
マウスが表示オブジェクトの領域またはその子の1つでないオブジェクトからその子のいずれかの領域に入ると、、表示オブジェクトは、ロールオーバーイベントを送出します。これは、マウスが表示オブジェクトコンテナの別の子オブジェクト上に既にあっても、マウスが表示オブジェクトコンテナの子オブジェクトの領域に入るたびに派遣されたマウスオーバーイベント、のとは異なる動作です。
他のヒント
私はROLL_OVER
イベントが何をやっていると、より適切なように見えることジョシュに同意します。ただし、 mouseChildren
flash.display.DisplayObjectContainer
(UIComponent
の祖先)のプロパティ
ロールアウトは、私のために動作します。 コンボボックスの問題について: イベントのターゲットはコンテナからの子である場合にも確認することができます。
所属していません StackOverflow