Hatena::Groupkeiroku

~DTPとかFlexとかFlashとかを中心に勉強中~

※初学者が右往左往しております。万が一記事内のスクリプトを利用される際は、恐れ入りますが自己責任にてお願いいたします。

2012-05-17

【Flex, Action Script】マウスイベントのターゲットの話

11:45

マウスイベントなどで、イベントリスナを貼りつけたコンポーネント自体が反応する場合。

下のように書いたら、うまくいかない。

protected function mouseOverAction(ev:Event):void
{
	ev.target.alpha = 0.4;
}

イベントリスナを処理するオブジェクトが取れないノカ!?

とビクビクしながらリファレンス見たら、ちゃんと書いてありました、スミマセン。


http://help.adobe.com/ja_JP/FlashPlatform/reference/actionscript/3/flash/events/MouseEvent.html#MOUSE_OVER

ポインティングデバイスの下にある InteractiveObject インスタンスです。
target は、必ずしもイベントリスナーを登録した表示リスト内のオブジェクトとは限りません。
現在イベントを処理している表示リスト内のオブジェクトにアクセスするには、currentTarget プロパティを使用します。

なるほど。


protected function mouseOverAction(ev:Event):void
{
	ev.currentTarget.alpha = 0.4;
}

↑が正解の越後製菓

ゲスト



トラックバック - http://keiroku.g.hatena.ne.jp/ryo513/20120517