Показать сообщение отдельно
Старый 17.06.2011, 23:35
carrotoff вне форума Посмотреть профиль Отправить личное сообщение для carrotoff Найти все сообщения от carrotoff
  № 1  
Ответить с цитированием
carrotoff
 
Аватар для carrotoff

Регистрация: May 2010
Сообщений: 543
По умолчанию Как обратиться к Library НЕ из Document Class

Собственно ситуация следующая: имеется проект, в библиотеке которого находится n-ое количество объектов, выгруженных в ас и в первый кадр. В документ классе проекта естественно без проблем могу создавать экземпляры этих объектов.

Код AS3:
public class SampleClass extends Sprite{
    public function SampleClass(){
        var myMovie:customMovie = customMovie(); // movieclip from library
        trace(myMovie);
    }
}
На определённом этапе в документ классе создается экземпляр другого класса, в который я передаю ссылку на документ класс. Например так:

Код AS3:
public class SampleClass extends Sprite{
    private var _ROOT:SampleClass;
 
    public function SampleClass(){
        this._ROOT = this;
        ..
    }
 
   private function _someFunction():void{
       var customObj:CustomClass = new CustomClass(this._ROOT); // Передаю ссылку на документ класс
   }
}
 
..
 
public class CustomClass {
   public function CustomClass(root:SampleClass){
       trace(root); // output [object SampleClass]
       ..
   }
}
Теперь непосредственно вопрос: как мне из CustomClass создать экземпляр объекта библиотеки?
Пробовал по-разному, например, так:

Код AS3:
public class CustomClass {
   public function CustomClass(root:SampleClass){
       trace(root); // output [object SampleClass]
       var myMovie:customMovie = root.customMovie(); // Ожидаемо получаю ReferenceError 
       ..
   }
}
Весь текст ошибки: ReferenceError: Error #1069: Не удалось найти свойство customMovie в SampleClass; отсутствует значение по умолчанию

Возможно запилить?
__________________
Вы грабите бедных людей. Парень со свирелью накажет вас. Хонгильдон (с)


Последний раз редактировалось carrotoff; 18.06.2011 в 00:04.