Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   проблема с event.target (http://www.flasher.ru/forum/showthread.php?t=143994)

in4core 31.08.2010 01:48

проблема с event.target
 
клип в библиотеке состоит из текстового поля внутри.

Код AS3:

for (var i=0; i<nodes.children().length(); i++) {
                                var mc:MovieClip = new butClass();
                                mc.x = mc.width*i;
                                mc.addEventListener(MouseEvent.MOUSE_OVER,mOVER);
                                mc.t.text = nodes.bt[i].@name;
                                container.addChild(mc);
 
                        }
private function mOVER(e:MouseEvent) {
                        trace(e.target as MovieClip);
                }

Что интересно, посольку mc это мувиклип. Значит и событие должно относится только к нему. Интерсный факт, что при проверке такого скрипта при попадании мышки на текстовое поле трейс показывает null соотвественно . Как же обращаться ЧИСТО к клип контейнеру ? Не пойму почему событие идет для всех вложенных в клип!

Добавлено через 1 час 9 минут
UPD.

Кнопка есть мувиклип, пустой, по бокам 2 линии в центре динамик текст, все отсальное поле пустое. В АС2 событие бы приписалось ко всему мувиклипу, если например на нижний слой полозжить невидимый шейп(0 альфа). А тут как то странно, на текст действет отдельно, на линии отдельно и т.д.... помогайте товарисчи

Добавлено через 1 час 10 минут
Да и buttonMode приписывается только к линиям

Psycho Tiger 31.08.2010 09:16

target - это текущая цель. Если внутри мувиклипа лежит, например, SimpleButton - target будем на нём.
currentTarget - это тот на кого подписывали. То есть тебе currentTarget надо.

in4core 31.08.2010 14:57

во спасибо. про куррент я то и не знал. Блин стока всего в ас3 намешано. запутаешься

Hidest 31.08.2010 15:19

Ну и вдогонку: mouseChildren = false, чтобы никакие дочерние элементы не ловили мышь.

in4core 31.08.2010 15:51

опаньки! и куда это пишется? К объекту на который слушатель вешается?

Hidest 31.08.2010 16:15

Ну да, к вашему контейнеру, который содержит в себе еще какие-то объекты. Главное, чтобы он был потомком InteractiveObject (Sprite, MovieClip).

in4core 31.08.2010 16:21

угу понятно спасибо.

kayn 31.08.2010 16:31

Я пробовал работать с currentTarget, но так ничего и не сработало, так и маюсь через одно место. Может поподробнее кто че скажет?

alatar 31.08.2010 16:59

Цитата:

Я пробовал работать с currentTarget, но так ничего и не сработало
Что вы хотите, что бы вам ответили на такой вопрос? Что конкретно "не сработало"?

in4core 31.08.2010 17:26

Все работает. проверено(с)


Часовой пояс GMT +4, время: 00:28.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.