Во Flash: gotoAndStop и вложенные проблемы MovieClip - PullRequest
1 голос
/ 27 апреля 2009

Это довольно странный вопрос, надеюсь, этой информации хватит на:

В Flash IDE у меня есть MovieClip, который имеет 3 кадра. В каждом кадре у меня есть серия TextFields. По сути, это стэк плохого человека - вот в чем проблема - в FP10 я могу без проблем написать следующий код:

public function showMenu():void{

     gotoAndStop(2);
     textItem.text = "This worked."

}

где «this» - мувиклип, а textItem - текстовое поле, которое находится только во втором кадре мувиклипа. Если я нацеливаюсь на FP9 и запускаю тот же код, я получаю сообщение об ошибке 1009 при попытке сослаться на свойство нулевого объекта.

Я понимаю, что он пытается получить доступ к этому свойству до того, как оно было полностью реализовано, но я не понимаю, почему оно работает в FP10, а не в FP9? Что могло измениться во флеш-плеере, чтобы разрешить это?

UPDATE:

Выглядит как-то странно в FP9 - обходной путь можно найти здесь:

http://www.scottgmorgan.com/blog/index.php/2008/03/06/accessing-displayobjects-on-the-timeline-after-a-gotoandstop-or-gotoandplay/

Ответы [ 2 ]

2 голосов
/ 28 апреля 2009

Да, это изменилось. Это было возможно в as2, но исчезло в as3, что привело к большей простоте более коротких сценариев временной шкалы. Итак, он был восстановлен в FP10. Я читал в блоге кого-то в Adobe об этом, но я не могу найти его прямо сейчас.

0 голосов
/ 28 апреля 2009

Обычно я обнаружил, что когда у вас есть объекты на временной шкале, чтобы получить к ним доступ с помощью ActionScript, они должны быть на всех кадрах временной шкалы, вы просто установите их видимость скрытыми, когда они ' не должно быть на экране. Я уверен, что столкнулся с этой проблемой как с fp10, так и с fp9, поэтому я удивлен, что ваш код действительно работает для вас в fp10.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...