2011-06-17 45 views
0

我对ActionScript很不熟悉,而且我正在尝试弄清楚如何从文件加载变量并将其发送到动态文本框,这是最难的时刻。Actionscript 2.0,简单的文件输入

外部文件“varload.txt”的内容是“name1 = John”。

这里是我的flash文件的动作:

myVars = new LoadVars(); 
myVars.onLoad = function(){ 
    trace(this.name1); //prints "John" as expected 
    myname=this.name1; 
} 
myVars.sendAndLoad("varload.txt", myVars); 

mytextbox.text=myname; //undefined 

我猜这是一个范围的问题,但我不能找到太多有关在线动作中的全局变量,所以我不知道如何解决这个问题。

如何让mytextbox.text等于John?

回答

1

问题是onLoad是异步的(在文件加载后调用,而不是立即调用)。

你必须定义onLoad功能中的文本:

myVars = new LoadVars(); 
myVars.onLoad = function() 
{ 
    mytextbox.text = this.name1; 
} 

myVars.sendAndLoad("varload.txt", myVars); 

与您的代码,你想文本框的内容设置为不存在的数据/不是招尚未装载。

+0

看起来对我来说是正确的,加上好的代码格式化:) – 2011-06-17 03:19:57

+0

Woops,我其实是不正确的。更新。 – Marty 2011-06-17 03:31:42