Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   пути 2х классов после воспроизведения функции второго (http://www.flasher.ru/forum/showthread.php?t=140760)

in4core 07.06.2010 16:53

пути 2х классов после воспроизведения функции второго
 
Код AS1/AS2:

class system.Configuration {
 
        private static var format:String = ".ini";
        private static var lang:String = null;
        private static var def:Object = {};
        private static var t;
        private var d:Date;
 
        public function Configuration() {
                super();
                t = new system.superXML();
                trace("*ini__config");
        }
        private function setConfig(b:Boolean):String {
                def = new system.Engine();
                if (b) {
                        trace("\rSystem language: " + def.getLanguage().toUpperCase());
                }
                return def.getLanguage();
        }
        private function getConfig(b:Boolean):Void {
                lang = new String((setConfig() == "ru") ? "RUS" : "ENG");
                t._load("config" + "_" + lang + format + (b == true ? "?" + d.getSeconds() : ''));
                t.getCallBack(unlockParametrs);
        }
        private function unlockParametrs() {
                trace("Config_ready" + "\rLanguage is: " + setConfig(false));
                var main = t.getNodes();
                trace("\r!" + main);
        }
 
}

Класс 1. ВО время выполнения unlockParameters функция setConfig(false) выдает значение undefined.


Код AS1/AS2:

class system.superXML {
 
        private  var xml;
        private  var b:Boolean=false;
        private var args;
        private  var _obj;
 
        function superXML() {
                xml = new XML();
                xml.ignoreWhite = true;
                xml.onLoad = mx.utils.Delegate.create(this, eventSuccess);
        }
        function eventSuccess(success) {
                if (!success) {
                        clearInterval(_obj);
                        this.args();
                        trace("sorry no files exist");
                }
        }
        function getCallBack(f) {
                args = f;
        }
        function _load(d) {
                xml.load(d);
                clearInterval(_obj);
                _obj = setInterval(this, "_check", 50);
        }
        function getNodes() {
                return xml.firstChild.childNodes;
        }
        function getLength() {
                return xml.firstChild.childNodes.length;
        }
        function getNodeAt(o) {
                return xml.firstChild.childNodes[o];
        }
        function getAttributes(o, split) {
                if (split == undefined || o == undefined) {
                        o = "title";
                        split = 1;
                }
                var attributesArray = [];
                for (var i = 0; i<xml.firstChild.childNodes.length/split; i++) {
                        attributesArray.push(xml.firstChild.childNodes[i].attributes[o]);
                }
                return attributesArray;
        }
        function getTopNode() {
                return xml.firstChild;
        }
        function getTopName() {
                return xml.firstChild.nodeName;
        }
        function _check() {
                var o = xml.getBytesTotal();
                var v = xml.getBytesLoaded();
                if (v/o != 1) {
                        return;
                } else {
                        clearInterval(_obj);
                        this.args(xml);
                }
        }
}

Класс 2. Работаем с getCallBack


И так вопрос почему 1 класс дает значение undefined после загрузки xml через второй. У него что меняется путь this ?

Добавлено через 10 минут
Вопрос снят))) на меня нахлынуло

Код AS1/AS2:

t.getCallBack(mx.utils.Delegate.create(this,unlockParametrs));



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

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