![]() |
Быстрый перезапуск приложения
Здравствуйте. Подскажите пожалуйста.
Есть приложение, начальные данные, библиотечные символы, что задаётся и пользователем после чего производяться вычисления и визуализация, подскажите код который сможет буквально в один клик вернуть все данные в исходные положения (можно без учёта пользовательских настроек). Очень-грубо говоря перемомать всё на 1-й кадр. |
Код AS3:
|
Если я правильно понимаю ситуацию, то удалить всё со сцены, и заново запустить init() документ-класса. Обычно такая возможность закладывается на этапе проектирования...
|
Да но мне приходиться работать уже с проектированной системой, потому ищу более простой способ перезапуска всей системы
|
Скорее всего такого способа не существует, хотя можно пользователя попросить перезапустить страничку.
|
Есть может какой-то недокументированный метод который позволяет перезапустить приложение. На сколько понимаю пока только один вариант, отследить все слушатели, удалить их и запустить родительский init
Добавлено через 30 секунд Система не браузерная, визуализация будет только в плеере. Возможно даже с встроенным флеш-плеером (ехе) |
Цитата:
|
В общем Вам придется (если это действительно нужно) делать все ручками. Никакой недокументированной функции нет.
|
как вариант: загрузить себя же в лоадер, добавить loader.content к stage, а себя удалить
в небольшом тесте работает, но насколько оно надежно трудно сказать Код AS3:
а может лучше не хозяйничать в stage, а сразу держать флешку в лоадере в какой-нибудь обертке, а при надобности перезагружать из loaderInfo.bytes |
У меня простой пример Ваш даже сразу не захотел работать. Правда через несколько перезапусков заработало. Но вот статические переменные не обнуляются, так что хоть что-то но писать придется. И не известно как это все будет на реальном проекте работать. Хотя сама идея здоровская))
|
Сейчас попробуем с лоадером.
|
Как ещё вариант (не учитывающий измененного сост. статиков, к сожалению) гл.класс приложения сделать второстепенным, пусть будет суперкласс-спрайт который будет создавать его, ложить его на сцену и потом убирать и пере создавать.
|
боюсь не хватит моего терпения со всема вытекающими траблами справиться. Придётся всё же в ручную.
Добавлено через 1 минуту только что так пробывал. Но непойму в чём проблема, слушатели слетали, связи терялись. |
Вложений: 1
Вложение 27562 кто сможет помогите в этой не травиальной задаче
|
Вообще, по хорошему, надо это предусматривать с самого начала. Т.е. процедура установки состояний эл-тов должна быть выделена, и при необходимости перезапущена. Ну, вот решение "на скорую" руку.
Там основное в файле Main.as. |
Большое спасибо. На счёт проектирования полностью с Вами согласен, проблема в том что мне приходиться заниматься доработкой. Потому тут приходиться лишь вносить корректировки. Еще раз большое спасибо за оказанную помощь.
|
| Часовой пояс GMT +4, время: 15:37. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.