Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Загрузка внешнего swf c нужного кадра (http://www.flasher.ru/forum/showthread.php?t=141151)

Byryn 17.06.2010 13:52

Загрузка внешнего swf c нужного кадра
 
Здравствуйте.

Ситуация такова: У меня есть достаточно большой интерактивный обучающий фильм в формате swf (под интерактивностью я имею ввиду присутствие кода в кадрах). В этом фильме есть вопросы для проверки знаний. Необходимо рядом с вопросами сделать кнопку вызова справки, которая будет загружать ту же swf с нужного кадра.

Я делаю так: создал форму с кнопкой, пишу свой класс расширяющий Sprite. Как в учебнике : URLRequest, load, addChild ... фильм загружается корректно.
Что делать дальше чтобы обратиться к содержимому, я не понимаю.
Подскажите на что обратить внимание, в каком направлении двигаться?

P.S. Использовать методы MovieClip-a не получается, так как импорт в библиотеку не проходит корректно. О решении этой проблемы я уже почитал и попробую этот вариант попозже.

Fatality 17.06.2010 14:03

Обращаться к содержимому загруженной флешки можно так, если в лоб:
Код AS3:

function urlLoaderCompleteHandler(e:Event = null):void {
  var ldrLoader:Loader = Loader(e.target.loader);
  var mcClip:MovieClip = MovieClip(ldrLoader.content);
  trace(mcClip);//Загруженный клип.
}

А по хорошему нужно использовать события.

Хемуль 17.06.2010 14:14

С событиями типа так можно:
Код AS3:

var path:String = "a.swf";
var request:URLRequest = new URLRequest(path);
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
loader.load(request);
 
function loaded(event:Event):void
{
        loader.removeEventListener(Event.COMPLETE, loaded);
        addChild(loader);
        var loadedClip:MovieClip = loader.content as MovieClip;
        loadedClip.gotoAndStop(3);
}


Byryn 17.06.2010 14:59

Большое спасибо Fatality, Хемуль.
Всё получилось.
Я поначалу в дебри залез .... думал еще один класс писать понадобится.

GoodWin74 09.01.2013 00:22

У меня что то не получается. Грузит все нормально а вот
Код AS3:

var loadedClip:MovieClip = loader.content as MovieClip;
        loadedClip.gotoAndStop(3);

как будто игнорирует. Просто грузится флешка и кадры бегают. Подскажите как быть?


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

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