Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Подгрузка SWF (http://www.flasher.ru/forum/showthread.php?t=175988)

Shpur 28.02.2012 17:39

Подгрузка SWF
 
Стоит задачка.. Объединить 2 свфника. Пишу процедурку подгрузки. Так получается, что происходит наложение второго екзешника на первый. Как сделать, чтоб в момент загрузки второго первый выгружался и наоборот?

bav 28.02.2012 18:42

Создайте третий (начальный), который будет загружать в себя первый и второй и выгружать их при необходимости. Выгрузить начальный swf из самого себя нельзя. Возможно вы имели ввиду удаление всего наполнения начального swf. Тогда что-то вроде:
Код AS3:

// Удаляет всех детей this из списка отображения
while(this.numChildren)
    removeChildAt(0);

Хотя на самом деле все зависит от того, что вы там понаписали, и такими простыми строчками не обойтись.

Добавлено через 3 минуты
Будет лучше если вы покажете, как вы загружаете "свфники" ("екзешники"?). Тогда вам скажут, как их выгрузить.

Shpur 28.02.2012 19:21

Код AS3:

forward.addEventListener(MouseEvent.CLICK, loadswf);
 
function loadswf(event:MouseEvent):void{
var loader:Loader= new Loader();
var url:URLRequest=new URLRequest("Ex6 P2.swf");
loader.load(url);
this.addChild(loader);
}

Вот так загружаю, происходит наложение

mooncar 28.02.2012 19:59

Shpur, не забывайте оформлять код тегами!

PainKiller 28.02.2012 23:11

тогда надо ветвление делать, переменную которая показывает какой swf на сцене и ремувить его перед загрузкой другого. Код надеюсь, напишете сами?

bav 28.02.2012 23:31

Код AS3:

var urls:Array = ["Ex6 P2.swf", "Ex6 P3.swf", "Ex6 P4.swf"];
var ldr:Loader = new Loader();
this.addChild(ldr);
 
forward.addEventListener(MouseEvent.CLICK, loadswf);
 
function loadswf (event:MouseEvent):void {
  ldr.unload();
  var url:String = urls.shift() as String;
  urls.push(url);
  var request:URLRequest = new URLRequest(url);
  ldr.load(request);
}

Loader.unload(). Не знаю только как поведет себя первый вызов unload(), лень тестировать.


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

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