Показать сообщение отдельно
Старый 27.11.2008, 16:19
dashaaa вне форума Посмотреть профиль Отправить личное сообщение для dashaaa Найти все сообщения от dashaaa
  № 1  
Ответить с цитированием
dashaaa

Регистрация: Sep 2008
Адрес: Moscow
Сообщений: 44
Отправить сообщение для dashaaa с помощью ICQ
По умолчанию старые песни о главном

Подскажите, как в такой ситуации правильно организовать функции, чтобы не было проблем с вложенными функциями и с областями видимости:
Код AS1/AS2:
class Room {
	static var xmlName:String = "1.xml";
	var xmlDoc:XML;
	var xml_rootNode:XMLNode;
 
	public function parsXML():Void {
		trace(xml_rootNode);
	}
	public function Init():Void {
		xmlDoc.load(xmlName);
           // ошибка - обработчик внутри функции.
           // хотя может и нет - обработчик нужен 1 раз и удаляется после использования
           // ?
		xmlDoc.onLoad = function():Void  {
			if (this.status == 0) {
				trace("Успешно");
				xml_rootNode = this.firstChild;
                                // !!!!! ошибка - эта функция "не видна" отсюда
				parsXML();
			} else {
				trace("Ошибка при чтении xml "+this.status);
			}
		};
	}
	public function Room() {
		xmlDoc = new XML();
	}
}