Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   <![CDATA[ function():void; ]]> (http://www.flasher.ru/forum/showthread.php?t=159357)

stweet 30.06.2011 02:49

<![CDATA[ function():void; ]]>
 
Код AS3:

package 
{
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.net.URLLoader;
        import flash.net.URLRequest;
 
        public class Main extends Sprite
        {
 
                public function Main():void
                {
                        if (stage) init();
                        else addEventListener(Event.ADDED_TO_STAGE, init);
                }
 
                private function init(e:Event = null):void
                {
                        removeEventListener(Event.ADDED_TO_STAGE, init);
                        // entry point
 
                        var urlLoader:URLLoader = new URLLoader(new URLRequest('init.xml'));
                            urlLoader.addEventListener(Event.COMPLETE, ON_COMPLETE);
 
                        function ON_COMPLETE (e:Event):void
                        {
                                var xml:XML = new XML(e.target.data);
 
                                var fun:Function = new Function;
                                    fun = xml.script.hello as Function; // null
                                    // fun = xml.script as Function;    // null
 
                                if (fun != null) fun.call();
                        }
                }
        }
}

Код AS3:

<?xml version="1.0" encoding="utf-8" ?>
<data>
        <script>
                <![CDATA[
                        function hello ():void
                        {
                                trace("Hello world!");
                        }
                ]]>
        </script>
</data>

Подскажите, что я делаю не так?

Rzer 30.06.2011 02:55

Flash player вам не компилятор. AS3 не JavaScript. Не умеет он так: из XML функции выполнять.

stweet 30.06.2011 02:57

Ясно, спасибо.


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

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