Показать сообщение отдельно
Старый 08.07.2007, 15:57
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 1  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
По умолчанию Компилятор не видит объект.

Первый пример.
Класс:
Код:
class Test {
    public function onPres():Void {
        trace(this);
    }
}
Код в swf:
Код:
var test:Test = new Test();
mc.onPress = test.onPres;
Нажимаем и получаем в трэйсе _level0.mc

Далее.
Класс:
Код:
class Test {
    public function onPres():Void {
        trace(this._x);
    }
}
Компилируем и получаем сообщение об ошибке следующего содержания:
Цитата:
There is no property with the name '_x'. trace(this._x);
Т.е мувиклип в метод передается, но попытка получить доступ к его свойствам вызывает ошибку компиляции. У меня такое подозрение, что компилятору нужно явно указать что в метод передается именно объект типа MovieClip, чтобы он мог спокойно работать с его свойствами. А если явно не указывать, то фактически неизвестно с каким объектом будет идти работа( это определится только при вызове метода). Можно ли как-то обойти это ограничение?