Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   reload swf (http://www.flasher.ru/forum/showthread.php?t=141106)

neros 16.06.2010 14:15

reload swf
 
И последний вопрос на сегодня!

есть ли возможность сделать полный релоад, тоеть вурнуть
все в начальные позиции? gotoAndPlay() gotoAndStop() не помогают.
зы: сам код написан внутри fla

гугль не особо помог что то... может кто то знает простое решение

Хемуль 16.06.2010 14:30

2 neros:
Я думаю, нет.
Ну, в одну строчку нет.

Партизан 16.06.2010 14:43

Ну как вариант...
Сделать из всего мувик, залинковать классом. Когда нужно, удалить... когда нужно new Mc(); :) не знаю поможет ли...

neros 16.06.2010 15:16

а какой нибуть вариант "вернутся в начало кода" существует.
тоесть мне посути нужно, что бы при нажатии клавиши очистить сцену и начать всю процедуру заново.

Хемуль 16.06.2010 15:19

2 neros:
Очистить сцену, убить экземпляры всех созданных обьектов, сбросить значения всех переменных... Сильно жирно...
Определитесь с тем, что вам действительно нужно очистить/сбросить и подумайте, как организовать ваше приложение таким образом, чтобы это вышло наиболее простым и безболезненным путём.

neros 16.06.2010 15:38

Код AS1/AS2:

removeChild(fr_opl);
input_kod.text="";
input_count.text="";
input_to_pay.text="";
show_pay.text="";
sdacha.text="";
 
var arrn:uint = in_d.length;
        for (var i=0; i<=arrn;i++)
        {
            removeChild(in_d[i]);
        }
i=0; gotoAndPlay(1);

пытался сделать так, но далее при повторном уже вводе в текстовые поля
получаю ошибки:
Код AS3:

ArgumentError: Error #2025: Предоставленный DisplayObject должен быть дочерним элементом вызывающего объекта.
        at flash.display::DisplayObjectContainer/removeChild()
        at MethodInfo-11()
        at flash.utils::Timer/_timerDispatch()
        at flash.utils::Timer/tick()


silin 16.06.2010 17:05

как вариант - перезагрузить флешку
не универсально, но в обычных раскладах должно работать
Код AS3:

var request:URLRequest = new URLRequest(root.loaderInfo.url);
var prevLoader:Loader = stage.getChildAt(0) as Loader;
if (prevLoader)
{
 
        prevLoader.unload();
        prevLoader.load(request);
}else
{
        var loader:Loader=new Loader();
        loader.load(request);
        stage.addChildAt(loader, 0);
        stage.removeChild(root);
}


Чттос 22.06.2010 18:12

еще один вариант, только вчера сама с этим столкнулась.
у меня есть объекты на первом кадре, и код там же. я просто создала второй кадр, пустой, и когда последняя функция заканчивает свое действие, я иду на 2й кадр и тут же на 1й, где все как новое !

нагородила огород, но особо не парилась и работает !))))


пс: а с перезагрузкой флэшки - интересно, интересно !.. :)


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

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