Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   TLF, проблема с переносом в другой контейнер. (http://www.flasher.ru/forum/showthread.php?t=169486)

nOobCrafter 05.10.2011 23:32

TLF, проблема с переносом в другой контейнер.
 
День добрый, наткнулся на странность, если в мувике ручками сделать TLF и потом его оттуда программно ПЕРЕМЕСТИТЬ в другой обьект (удаление работает нормально), то TLF видно и в первом и во втором контейнерах (хотя если переноса изменить координату, то изменится только в последнем контейнере).
Код AS3:

var test:Sprite = new TestTLF();// мувик с TLF созданным в ИДЕ
var tlf:TLFTextField = test.getChildByName("tlf") as TLFTextField;
addChild(test);
 
var cont:Sprite = new Sprite();
        cont.addChild(tlf);
        cont.y = 30;
 
addChild(cont);

Собсна в чем тут дело и как можно это обойти?

trng 06.10.2011 01:06

Ваше примечание в скобках (... то изменится только в последнем контейнере ...) говорит о том что tlf - это новый объект, а не ссылка "ребенка" внутри test.
Вообще конечно странно. Ни getChildByName ни оператор as не должны генерировать новый объект.
Можно попробовать test.removeChildAt (номер вам известен заранее - мувик-то создан в ИДЕ).
Но так быть не должно.

Добавлено через 1 минуту
А если написать var test:TestTLF = new TestTLF();
Что-то изменится?

nOobCrafter 06.10.2011 13:34

Цитата:

А если написать
ничего не будет.
после переноса поле принимает вид изначально нарисованного в иде, то есть если изменить ему св-ва и потом перенести в другой контейнер, то в первом контейнере все изменения сбрасываются, а во втором все нормально.
если заремуть в старом и потом добавить в новый то опять же все как описал выше, но если заремувить всех детей, то будет ошибка при попытке добавить tlf в новый мувик.

При трейсе детей мувика сделанного руками вижу там еще 2 каких то мувиклипа, хотя реально в иде лежит только TLF.


Часовой пояс GMT +4, время: 16:36.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.