Просмотр полной версии : Доступ к child'am
var spr:Sprite = new Sprite();
var mc:MY_MC = new MY_MC();
spr.addChild(mc);
trace(spr.mc);
//ошибка
var spr:Sprite = new Sprite();
var mc:MY_MC = new MY_MC();
spr.addChild(mc);
trace(mc);
//ошибки нет
Как это объяснить?
Moderator: а че это тут делает? Перенес в ActionScript 3.0
Собственно по теме: Как мы помним в AS1-2 у каждого мувика, обязательно должно было быть "физическое тело" на сцене. таким образом при добавлении мувика на сцену, в родителе автоматом создавалось свойство, дающее доступ к этому мувику. свойство совпадало с instance идентификатором.
В AS3 физического представления не нужно, поэтому и нужды загружать плеер созданием лишних свойств (особенно учитывая то что Sprite и многие другие классы, закрыты и в них не могут быть добавлены свойства в рантайме, что кстати дает лишний прирост к скорости), делает старые способы вроде цепочек mc1.mc2.mc3.mc4 не нужными, вместо этого мы стучимся по ближайшей доступной ссылке на экземпляр DisplayObject'а.
P.S. написал сумбурно, надеюсь понятно. если нет позже распишу.
А, чорт, забыл getChildByName написать :)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.