PDA

Просмотр полной версии : attachMovie из класса


lumumba
11.03.2006, 09:44
скажем есть у нас:

class byaka :D extends MovieClip{
public var my_mc:MovieClip;

//в конструкторе пишем(ну или где то еще в классе что не важно)

public function byaka(id:String){
attachMovie(id, "my_mc", getNextHighestDepth());
}
}//end of class

В библиотеке у нас мувик с идентфикатором "id"
Пользуем класс:

ну там импорт в начале :p ;
var iuh:byaka = new byaka("id");

по идее(по моей идее) из библиотеки должен приаттачиться ролик и все должны его увидеть и радоваться жизни. Но этого не происходит.
Что из классов нельзя атттачить клипы из библиотеки?

Король
11.03.2006, 09:59
трейс нам не друг?

lumumba
11.03.2006, 10:09
пробовал уже. Ты лучше скажи чтоя не так делаю

Король
11.03.2006, 10:20
откуда мне знать? из того кода который ты привел -я не могу этого определить. может у тебя - грамматическая ошибка в linkage, или еще миллион багов, которые предугадать невозможно.
что трейс говорит на каждом этапе приложения?

lumumba
11.03.2006, 10:27
с linkage все нормально
конструктор вызваеться нормально - проверял трейсом
если трейсом выводить:
trace(my_mc);
выводит undefined. Т.е. объекта нету, он не аттачился.

Король
11.03.2006, 10:41
у тебя мувика-экземпляра не существует. вернее, он существует, но в виде объекта. аттачить просто не к чему

lumumba
11.03.2006, 10:43
и как мне это решить?

Король
11.03.2006, 10:45
mc = createEmptyMovieClip("mc",100)
mc.__proto__ = byaka.prototype
mc.byaka("id")
например так

lumumba
11.03.2006, 11:38
работает(трейсит), но все равно не показывает

а чем mc = createEmptyMovieClip("mc",100)
mc.__proto__ = byaka.prototype
mc.byaka("id")
отличается от
var mc:byaka = new byaka("id")?

Король
11.03.2006, 11:40
тем, что у тебя мувик создается на сцене

lumumba
11.03.2006, 11:54
следовательно разницы особой нету
может в контструкторе моего класса вызвать конструктор MovieClip'а, а затем конструкторить остальное мое?

Король
11.03.2006, 12:01
как это - разницы нету? в твоем коде у тебя не существует мувика, в моем - он существует. следовательно, к нему можно аттачить.

K.A.T.A.F.A.L.K.E.R
11.03.2006, 12:17
А чем не устраивает в Linkage указать напрямую AS class и потом банально attachMovie? Или просто покувыркаться захотелось?

lumumba
11.03.2006, 15:15
в принципе я так и сделал уже
и все работает
но мне стало интересно, как решить эту проблему

lumumba
11.03.2006, 15:15
как это - разницы нету? в твоем коде у тебя не существует мувика, в моем - он существует. следовательно, к нему можно аттачить.
аттачить то можно
только не работает все равно