Такая вот диллема возникла, перехожу с АС2 на АС3
ну не могу понять хоть убей и все
1. создаю новый документ Document class пишу main.root_class
создаю соответствующую папку и директорию
2. рисую объекты которые мне нужны (создаю в папке main соответствующие классы)
стоит задача загрузить картинки из XML
с парсом XML проблем не возникло, но не могу сделать следующее.
мне надо вставить в нарисованный в руте объект я дал имя ему cont_ т.е. не название класса а именно имя переменной cont_
и соответственно при парсинге XML мне нужно в нем создать экземпляр определенного объекта:

Код AS3:
package main {
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.xml.*;
import flash.net.*;
import flash.events.*;
import flash.display.DisplayObjectContainer;
import main.*;
public class XML_doc extends Sprite {
var xml_file:String;
var xml_string:XML;
var objects:Array = new Array();
var result:XMLDocument = new XMLDocument();
public function XML_doc (xml_file:String) {
this.xml_file = xml_file;
trace (this.xml_file);
this.result.ignoreWhite = true;
load_from_file();
// trace(this.xml_string);
// result.parseXML(this.xml_string);
// getImages(result.firstChild);
}
private function getImages (node:XMLNode) {
var kids:Array = node.childNodes;
var x_:int = 50.0;
var y_:int = 2.0;
for (var i:int = 0; i < kids.length; i++) {
//trace (kids[i]);
var contaner:contaner_dummy = new contaner_dummy();
contaner.preview_src = kids[i].attributes.preview_src;
contaner.src = kids[i].attributes.src;
contaner.link = kids[i].attributes.link;
contaner.x = x_;
trace(root_class); // здесь он мне показывает что [руткласс загружен]
root_class.cont_.addChild(contaner); //здесь пишет 1120: Access of undefined property cont_ ! хоть убей!
x_ += 147;
}
trace(this.objects);// это я уже пытался забить все объекты в массив и получить через свойство objects - результат тотже, не видно этого свойства хоть убей
}
private function load_from_file() {
var loader:URLLoader = new URLLoader();
loader.dataFormat = "text";
loader.addEventListener(Event.COMPLETE, loaded);
var request:URLRequest = new URLRequest(this.xml_file);
try {
loader.load(request);
}
catch (error:Error) {
trace("Unable to load request document");
}
}
private function loaded(event:Event) {
var str:String = event.target.data;
this.result.parseXML(str);
getImages(result.firstChild);
//this.xml_string = new XML(event.target.data);
//trace (this.xml_string);
}
}
}
Вообщем никак не пойму, как получить доступ к уже нарисованным в сцене объектам?
Запарился уже
