Показать сообщение отдельно
Старый 21.01.2011, 15:10
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 4  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Можно. Вот например:
Подгружаемая флешка:
Код AS3:
package  
{
    import flash.display.MovieClip;
    import flash.events.Event;
 
    public class Test extends MovieClip
    {
        public function Test():void 
        {
            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);
        }
 
        private function init(event:Event = null):void
        {
            removeEventListener(Event.ADDED_TO_STAGE, init);
 
            if (parent != stage)
                parent["parentFunc"]();
            else
                trace("in child");
        }
    }
}
Главная (подгружающая) флешка:
Код AS3:
package  
{
    import flash.display.Loader;
    import flash.display.MovieClip;
    import flash.events.Event;
    import flash.net.URLRequest;
 
    public class Main extends MovieClip
    {
        public function Main():void
        {
            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);
        }
 
        private function init(event:Event = null):void
        {
            removeEventListener(Event.ADDED_TO_STAGE, init);
 
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadHandler);
            loader.load(new URLRequest("test.swf"));
        }
 
        private function loadHandler(event:Event):void
        {
            var mc:MovieClip = event.target.content as MovieClip;
            addChild(mc);
        }
 
        // обратите внимание на спецификатор public
        public function parentFunc():void
        {
            trace("in parent");
        }
    }
}