Я хочу узнать, был ли мой SWF загружен локально или с другого SWF. Для этого я объявил переменную parentType в моем fla.
var parentType: String = String (parent);
В классе документа есть функция, которая определяет, был ли SWF загружен локально или из другого SWF. Имя функции в классе документа - externalOrInternal. Переменный parentType передается в качестве параметра функции externalOrInternal.
externalOrInternal (parentType);
Имя класса документа - Main.
В конструкторе Main у меня есть функция pollResize () (эта функция используется для прослушивания события изменения размера. Эта часть кода не показана в приведенном ниже фрагменте кода).
Мой флаг выглядит следующим образом.
var parentType:String = String(parent);
externalOrInternal(parentType);
Мои документы следующие.
package {
import flash.display.MovieClip;
public class Main extends MovieClip {
private var swfParentType:String;
public function Main1() {
pollResize();
}
public function externalOrInternal(parentType:String) {
swfParentType=parentType;
trace("Inside externalOrInternal");
trace(swfParentType);
}
private function pollResize():void {
trace("Inside pollResize");
trace(swfParentType);
}
}
}
Когда я бегу, вот что прослеживается
Inside pollResize
null
Inside externalOrInternal
[object Stage]
Я вижу, что swfParentType имеет значение insde для функции externalOrInternal. Я сомневаюсь, почему null отслеживается внутри функции pollResize. Почему это не [объектная стадия], как внутри externalOrInternal. В связи с этим я не могу продолжить работу с событием изменения размера этапа. Что необходимо сделать, чтобы в функции pollResize отслеживалось правильное значение.