Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash AS3将XML加载到列表框中_Xml_Flash_Cs3 - Fatal编程技术网

Flash AS3将XML加载到列表框中

Flash AS3将XML加载到列表框中,xml,flash,cs3,Xml,Flash,Cs3,我能够将XML文件加载到flash中并跟踪结果。 要使用xml文件中的信息填充列表框 xml文件的结构: <eBorders> <item> <thumb>borderTh/blank_th.jpg</thumb> <file>border/blank.jpg</file> </item> <item>

我能够将XML文件加载到flash中并跟踪结果。 要使用xml文件中的信息填充列表框

xml文件的结构:

   <eBorders> 
    <item> 
        <thumb>borderTh/blank_th.jpg</thumb>
        <file>border/blank.jpg</file>       
    </item>
    <item> 
        <thumb>borderTh/border1_th.jpg</thumb>
        <file>border/border1.jpg</file>     
    </item>
</eBorders>

borderTh/blank_th.jpg
border/blank.jpg
borderTh/border1th.jpg
border/border1.jpg
AS3代码:

var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("xml/borders.xml"));

var dp:DataProvider = new DataProvider("borders.xml");

border_lb.dataProvider = dp;
border_lb.iconField = "iconSource";
border_lb.rowHeight = 45;

function processXML(e:Event):void {
myXML = new XML(e.target.data);
for(var i:int=0;i<myXML.*.length(); i++){
    dp.addItem({iconSource:myXML.item.thumb.[i]});
    }
}
var myLoader:urloader=newurloader();
load(新的URLRequest(“xml/borders.xml”);
var dp:DataProvider=newdataprovider(“borders.xml”);
border_lb.dataProvider=dp;
border_lb.iconField=“iconSource”;
边框_lb.rowHeight=45;
函数processXML(e:Event):void{
myXML=新的XML(e.target.data);

对于(var i:int=0;i我认为您的解释中缺少了一些有助于澄清您的问题的项目

例如,processXML函数由一个事件(e:event)触发,但未显示该事件

此外,还不清楚border_lb到底是什么(即它是一个对象还是一本词典?)

尽管如此,我认为改变的关键是:

iconSource:myXML.item.thumb[i]

iconSource:myXML.item.thumb.text()[i]

iconSource:myXML.item.thumb[i]//减去句点

见示例:

import fl.data.DataProvider;


var myXML:XML = <eBorders> 
    <item> 
        <thumb>borderTh/blank_th.jpg</thumb>
        <file>border/blank.jpg</file>       
    </item>
    <item> 
        <thumb>borderTh/border1_th.jpg</thumb>
        <file>border/border1.jpg</file>     
    </item>
</eBorders>;

var dp:DataProvider = new DataProvider();
var border_lb:Dictionary = new Dictionary();
border_lb.dataProvider = dp;
border_lb.iconField = "iconSource";
border_lb.rowHeight = 45;

function processXML():void {

for(var i:int=0;i < myXML.*.length(); i++){

    trace(myXML.item.thumb.text()[i]);
    dp.addItem({iconSource:myXML.item.thumb.text()[i]});
    }
}

processXML();
导入fl.data.DataProvider;
var myXML:XML=
borderTh/blank_th.jpg
border/blank.jpg
borderTh/border1th.jpg
border/border1.jpg
;
var dp:DataProvider=newdataprovider();
var border_lb:Dictionary=new Dictionary();
border_lb.dataProvider=dp;
border_lb.iconField=“iconSource”;
边框_lb.rowHeight=45;
函数processXML():void{
for(var i:int=0;i
border\u lb是listbox.processXML由xml文档的完全加载触发-代码更改:var dp:DataProvider=new DataProvider();border\u lb.DataProvider=dp;border\u lb.iconField=“iconSource”;border\u lb.rowHeight=45;var myXML:xml;var myLoader6:urloader=new urloader();myLoader6.load(new URLRequest(“xml/borders.xml”));myLoader6.addEventListener(Event.COMPLETE,processXML);函数processXML(e:Event):void{myXML=newXML(e.target.data);用于(var i:int=0;我想向名为border_lb的列表框添加图标或缩略图。图标存储在文件夹borderTh中,文件名为border1_th.jpg。在作为子元素的XML文件中。图标表示的实际图像在border文件夹中,文件名为border1.jpg。在作为子元素的XML文件中元素。现在我需要用图标和数据填充边框。谢谢你的时间。安妮