PDA

Просмотр полной версии : Call to a possibly undefined method addChild.


DEN123
14.06.2009, 02:32
точка входа index1
package main
{
import flash.display.Sprite;
public class index1 extends Sprite
{
var xml:Array = new Array();
var papka:Boolean;
public function index1()
{
trace("index1");
if(xml.length == 0)
xml[0] = new LoadXML("index.xml");
else
xml[xml.length++] = new LoadXML("index.xml");
papka = 0;



}
}
}

LoadXML
package main
{

import fl.controls.Label;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;

public class LoadXML
{
var myXMLLoader:URLLoader;
var myXML:XML;
public function LoadXML(file:String)
{
file = "index.xml";
trace("LoadXML");
myXMLLoader = new URLLoader();
myXMLLoader.load(new URLRequest(file));
myXMLLoader.addEventListener(Event.COMPLETE, process);
}
function process (e:Event):void
{
myXML = new XML(e.target.data);
trace(myXML);
createLabel();
}
var myLabel:Array = new Array();
function createLabel()
{
var object:XMLList = myXML.TEST;
for (var t:int=0; t<object.length(); t++)
{
myLabel[t] = new Label();
myLabel[t].move(10,t*20);
myLabel[t].htmlText = "<u>"+object[t].@title+"</u>";
myLabel[t].name = object[t].@title;
//myLabel.addEventListener(MouseEvent.CLICK, moveTo);
addChild(myLabel[t]);
}
}
}
}

fljot
14.06.2009, 02:44
не удивительно - у класса LoadXML нет метода addChild

DEN123
14.06.2009, 02:59
эм логично=) эм но я хотел исползовать AddChild чем егго заменить?

fljot
14.06.2009, 03:40
а что вы от него(метода) ожидали, если класс не является наследником DisplayObjectContainer?

DEN123
14.06.2009, 10:20
унаследовал я этот класс от DisplayObjectContainer.
мне выдалась ошибка если от Sprite то норм без ошибок но елемент не показывается.

я так понимаю надо создать отдельный класс который будет выводить елементы?

kackbip
14.06.2009, 14:02
Надо просто с логикой разобраться и с языком AS3.
У вас 2 проблемы:
1) куда вы собираетесь добавлять ребенка?
2) то место куда вы добавляете ребенка само где находится?

DEN123
14.06.2009, 22:35
мне надо на экран это вывести...

Nirth
14.06.2009, 23:27
Добавить событие в загрузчик XML, и пусть контейнер добавляет.

DEN123
14.06.2009, 23:36
я не понимаю ккак это делается

Nirth
14.06.2009, 23:40
http://livedocs.adobe.com/flex/3/html/help.html?content=16_Event_handling_1.html#118819

DEN123
15.06.2009, 00:42
эм мне не чего не понятно там.

Nirth
15.06.2009, 00:44
Примите мои собалезнования.

dimarik
15.06.2009, 02:01
Nirth ожил, или его взломали мне показалость?

Nirth
15.06.2009, 02:17
гм?=)