PDA

Просмотр полной версии : Если _parent[targetMC] = undefined - вдогонку


meiciuc
15.02.2006, 20:44
Извините за возможный флуд, но надеюсь, что мое сообщение сможет кому-нибудь избежать потери времени с проблемой, которая убила у меня 6 часов. Просто, тема уже была закрыта http://flasher.ru/forum/showthread.php?t=75577

1. не с того места запускаешь свой парент;
2. если с путями у тебя все нормально, то подобную проблему я видел и боролся при динамическом создании текстового поля.
например вариант

var dt:TextField = _root.createTextField("dt",0,0,0,0,0);
trace(dt);//не работает
trace(_root["dt"]);//работает (бред)

работать не будет
хотя точно такой же с любым другим объектом - без проблем

var mc:MovieClip = _root.createEmptyMovieClip("mc_mc",0);
trace(mc);

чтоб заработало текстовое поле, мне пришлось сделать маразматическую вещь

var dt:TextField = _root.createTextField("dt",0,0,0,0,0);
var dt:TextField = _root["dt"];
trace(dt);//работает

т.е. уже суперявно дать ссылку переменной.

Так что выводы делай уже сам, либо ты все-таки даешь неверный путь, либо ты нашел еще один случай, когда всплывают флешевые глюки (надеюсь, что все же это твоя ошибка)

Antares
15.02.2006, 20:46
Глюков с адресацией за годы замечено не было.
Спасибо за уточнения в любом случае.

__i
15.02.2006, 21:00
А ты хелп читал ?, В хелпе ясно написано что функция createEmptyMovieClip возвращает ссылку на созданый объект, а createTextField ничего не возвращает !!!

т.е. запись
var dt:TextField = _root.createTextField("dt",0,0,0,0,0); тебе ничего не даст!!!!
т.к. ты в dt запизываешь ничего (void)

если не понял о чем речь то посмотри хелп внимательнее!!!

meiciuc
15.02.2006, 21:12
вот это спасибо - мой глюк. Что значит сила привычки!
Т.е. не зря старался :))