Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Перезагрузит флешку оставив данные (http://www.flasher.ru/forum/showthread.php?t=131462)

Musatoff 21.10.2009 12:28

Перезагрузит флешку оставив данные
 
Добрый день, друзья!
Вопрос такой. Есть мувик, в который грузятся картинки и добавляются другие клипы по нажатию одной кнопки. Как сделать так чтобы при нажатии на другую кнопку в этот же мувик чистился и туда загружались новые картинки и клипы.
я сделал так:
Код AS3:

var myTARGET:Object = event.target.parent.parent.parent.getChildByName('line')
                                if(!myTARGET){
                                        line = new Line()
                                        event.target.parent.parent.parent.addChild(line)
                                        line.name = 'line'
                                        line.maska.mouseEnabled = false
                                        line.blendMode = BlendMode.LAYER;
                                        line.x = 50
                                        line.y = 250
                                        getThumbs2(event)
                                }
                                else{
                                        for(var f:int = 0; f < myTARGET.numChildren(); f++) {
                                        myTARGET.removeChildAt( f )
                                        getThumbs2(event)
                                }

Впринципе работает, НО! если делаешь симуляцию загрузки то часто новые клипы не грузяться или наполовину видны.

random13 21.10.2009 12:48

значит что то делаете не так, в чем проблема бирете и чистите весь ваш мувик что вы ровно и сделали, единственное возможно проблема с логикой

Musatoff 21.10.2009 14:10

а может есть такой листенер, что например отследит, что мувик пустой? потому что подозреваю что внутри не все удаляется.

random13 21.10.2009 14:24

Код AS3:

for(var f:int = 0; f < myTARGET.numChildren(); f++) {
                                        myTARGET.removeChildAt( f )
                                        getThumbs2(event)

таким способом вобщем то все достаточно не плохо зачищается
в конце концов сделайте трейс в любой момент где посмотрите сколько у вашего объекта детей

cleptoman 21.10.2009 15:58

пустой мувик - новый мувик )

ToRR 21.10.2009 17:11

ваш код:
Код AS3:

else{
for(var f:int = 0; f < myTARGET.numChildren(); f++) {
myTARGET.removeChildAt( f )
getThumbs2(event)
}

где еще одна фигурная скобка? вам точно нужно вызывать getThumbs2(event) при каждой итерации цикла? ну и удалять дочерние объекты из контейнера черз for.... кхм.... может быть как-то так:
Код AS3:

while (myTARGET.numChildren)
{
    myTARGET.removeChildAt(0);
}
getThumbs2(event);

?

elfon 21.10.2009 17:11

Я туплю или этого никто не замечает но:
Код AS3:

for(var f:int = 0; f < myTARGET.numChildren(); f++) {
                                        myTARGET.removeChildAt( f )
                                        getThumbs2(event)

не удаляет всех потомков. Как раз таки проблема в логике.

Musatoff 21.10.2009 17:42

почему не удаляет? Как раз удаляет, но он не успевает видимо удалить до тех пор пока не создаст новый. Нужно как отследить когда мувик уже пустой.
2cleptoman: пробывал, так плохо получается, что-то не работает

Felicast 21.10.2009 17:45

Код AS3:

while(myTARGET.numChildren())
{
        myTARGET.removeChildAt(0);
}

удалит все

Musatoff 21.10.2009 17:53

удалить, нет проблем уже, но как отследить что все удалено? какой листенер сделать, что-то не вкуриваю?


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

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