Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите разобраться с загрузкой клипа 
:(
    Опции темы
ERrorMAKros
  Дата 9.8.2010, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 7.8.2010

Репутация: нет
Всего: нет



Добрый день/вечер,
К сабжу прикреплен attach маленького проекта, который загружает swf.
Вот, грубо говоря, модель работы приложения:
user posted image

Cмысл этой реализации в том, что бы - загрузить из одной "классифицированной" флешки - другую "классифицированную" флешку и работать с ней как с классом. В моем случае - Localconnection  (видимо) не подходит, потому что там 40Kb за раз в одну сторону, ...а передо мной, в дальнейшем, задача передавать в другую флеху-класс объемы и по более...  Проблема в приложении в следующем - при загрузке в контейнер (index.swf) моего loadthis.swf приложения, не работает кнопка описанная в loadthis.swf ((((

Загрузчик в INDEX_SWF:
Код

package com {
import flash.display.MovieClip;
import flash.utils.ByteArray;
import flash.events.*;
import flash.display.Loader;
import flash.system.LoaderContext;
import flash.system.ApplicationDomain;
import flash.utils.getDefinitionByName;
import flash.utils.getQualifiedClassName;
import flash.net.*;
 
public class index extends MovieClip {
    private var urlLoader   : URLLoader;
    private var loader      : Loader;
    private var importClass : *;
 
    public function index(){
        trace('конструктор', this);
        this.urlLoader = new URLLoader();
        this.urlLoader.dataFormat=URLLoaderDataFormat.BINARY;
        this.urlLoader.addEventListener(Event.COMPLETE, completeHandler);
        try   {this.urlLoader.load(new URLRequest('loadthis.swf'));}
        catch (error:Error){trace("Unable to load requested document.");}
        } // index
 
        private function completeHandler(e:Event):void{
        trace(this, '> loaded ..!!');
 
        this.loader = new Loader();
        with(this.loader){
             contentLoaderInfo.addEventListener(Event.COMPLETE, builderHandler);
             loadBytes(e.target.data, new LoaderContext(false, ApplicationDomain.currentDomain));
             } // with(loader)
        } // completeHandler
 
        private function builderHandler(e:Event):void{
        var appDomain:ApplicationDomain = e.target.content.loaderInfo.applicationDomain;
        var mclass: Class = appDomain.getDefinition(getQualifiedClassName(e.target.content)) as Class; 
        if (mclass){
            this.importClass = new mclass();
            this.addChild(this.importClass);
            } // mclass
        } // builderHandler
 
    } // class
} // package


Как ни старайся - после загрузки проекта в index, в загруженной .swf`ке никакой реакции на мышиные события! Конструктор класса button срабатывает только один раз, в загрузчике класса index:
Код

with(this.loader){
contentLoaderInfo.addEventListener(Event.COMPLETE, builderHandler);
loadBytes(e.target.data, new LoaderContext(false, ApplicationDomain.currentDomain)); // вроде тут
} // while


А при создании экземпляра класса загруженного клипа - конструктором кнопки и не пахнет (((
Что делать? У меня паника... 


Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  smpl.rar 20,94 Kb
PM MAIL   Вверх
ОВиталий
Дата 4.10.2010, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.10.2008

Репутация: нет
Всего: нет



я делал так

Код

var youImportClass : *;

var  loader:Loader = new Loader();

loader.load(...);
loader.contentLoaderInfo.addEventListener(Event.Complate, onComplete);
.....

function onComplete(e:Event):void{
youImportClass = e.currentTarget.loader.content;


(писал по памяти могут быть синтасические ошибки)
дальше работай с ним как с обычным мувиклипом
PM MAIL   Вверх
ОВиталий
Дата 4.10.2010, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 93
Регистрация: 17.10.2008

Репутация: нет
Всего: нет



я делал так

Код

var youImportClass : *;

var  loader:Loader = new Loader();

loader.load(...);
loader.contentLoaderInfo.addEventListener(Event.Complate, onComplete);
.....

function onComplete(e:Event):void{
youImportClass = e.currentTarget.loader.content;


(писал по памяти могут быть синтаксические ошибки)
дальше работай с ним как с обычным мувиклипом
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 3 | Следующая тема »


 




[ Время генерации скрипта: 0.0401 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.