关于as3.0编程,怎么对多个动态文本框名称做循环 20
varxmlloader:URLLoader=newURLLoader();varurlrequest:URLRequest=newURLRequest("zhandia...
var xmlloader:URLLoader = new URLLoader();
var urlrequest:URLRequest = new URLRequest("zhandian.xml");
xmlloader.load(urlrequest);
xmlloader.addEventListener(Event.COMPLETE,_complete);
function _complete(e:Event)
{
trace("加载完成");
var myXML = new XML(e.target.data);//表示把原来“zhandian”里的数据编程一个新的XML文件,即:myXML
var myXMLlength:int = myXML.station.length();//这里是取新XML文件里的所有statoin节点,用length来表示统计总数。
for (var i:int=0; i<myXMLlength; i++)
{
trace(myXML.station[i].name);//这里输出,name下的相应相应数据。有了这一步,就可以随意添加到舞台了。
station1.text=myXML.station[0].name
station2.text=myXML.station[1].name
station3.text=myXML.station[2].name
station4.text=myXML.station[3].name
station5.text=myXML.station[4].name
station6.text=myXML.station[5].name
...
以上是我的部分代码,我在舞台中画了23个文本框 想用循环语言把23个文本框依次名称定义为station[0]-station[22] 我的方法太繁琐 请大神帮忙 展开
var urlrequest:URLRequest = new URLRequest("zhandian.xml");
xmlloader.load(urlrequest);
xmlloader.addEventListener(Event.COMPLETE,_complete);
function _complete(e:Event)
{
trace("加载完成");
var myXML = new XML(e.target.data);//表示把原来“zhandian”里的数据编程一个新的XML文件,即:myXML
var myXMLlength:int = myXML.station.length();//这里是取新XML文件里的所有statoin节点,用length来表示统计总数。
for (var i:int=0; i<myXMLlength; i++)
{
trace(myXML.station[i].name);//这里输出,name下的相应相应数据。有了这一步,就可以随意添加到舞台了。
station1.text=myXML.station[0].name
station2.text=myXML.station[1].name
station3.text=myXML.station[2].name
station4.text=myXML.station[3].name
station5.text=myXML.station[4].name
station6.text=myXML.station[5].name
...
以上是我的部分代码,我在舞台中画了23个文本框 想用循环语言把23个文本框依次名称定义为station[0]-station[22] 我的方法太繁琐 请大神帮忙 展开
2个回答
展开全部
创建一个Vector 或者 Object都可以;
Vector:
private var _vcTextName:Vector.<TextFiled> = new Vector.<TextFiled>;
Object:
private var _dictTextName:Object = new Object();
-------------------------------------------
循环保存:
for( var i:int = 0; i < myXMLlength; i++ ){
var myTextField:TextField = new TextField();
myTextField.text = myXML.station[ i ].name;
///vector 两种都可以
_vcTextName.push( myTextField );
///object 两种都可以
_dictTextName[ station + i ] = myTextField;
}
-------------------------------------------
读取:
Vector:
_vcTextName[ 0-22 ]
Object:
_dictTextName[ station0 - 22 ]
获取对应的文本。
-----------
直接手写没测试。
Vector:
private var _vcTextName:Vector.<TextFiled> = new Vector.<TextFiled>;
Object:
private var _dictTextName:Object = new Object();
-------------------------------------------
循环保存:
for( var i:int = 0; i < myXMLlength; i++ ){
var myTextField:TextField = new TextField();
myTextField.text = myXML.station[ i ].name;
///vector 两种都可以
_vcTextName.push( myTextField );
///object 两种都可以
_dictTextName[ station + i ] = myTextField;
}
-------------------------------------------
读取:
Vector:
_vcTextName[ 0-22 ]
Object:
_dictTextName[ station0 - 22 ]
获取对应的文本。
-----------
直接手写没测试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询