Actionscript 3 AS3在函数中使用变量 函数displayQues():void { //------显示问题 对于(var i:uint=0;i
Er),您的问题很难理解,但我将尝试解决它 因为您没有在函数前面列出Actionscript 3 AS3在函数中使用变量 函数displayQues():void { //------显示问题 对于(var i:uint=0;i,actionscript-3,Actionscript 3,Er),您的问题很难理解,但我将尝试解决它 因为您没有在函数前面列出private或public,所以我假设您在actions窗口中执行所有操作,而没有actionscript类 您需要引用变量q。但是,对q的引用将丢失给其他函数和类,因为q仅在创建它的函数中可用 下面是我要做的;在函数块之外,键入这个 function displayQues():void { //------display question for (var i:uint=0; i<numQues; i
private
或public
,所以我假设您在actions窗口中执行所有操作,而没有actionscript类
您需要引用变量q
。但是,对q
的引用将丢失给其他函数和类,因为q
仅在创建它的函数中可用
下面是我要做的;在函数块之外,键入这个
function displayQues():void
{
//------display question
for (var i:uint=0; i<numQues; i++)
{
q_list.push(i);
}
for (var j:uint=0; j<numQues; j++)
{
var q:Ans = new Ans();
q.stop();
q.x = (j + 1) * 200;// set position
q.y = 500;
var r:uint = Math.floor(Math.random() * q_list.length);
q.qface = q_list[r];// assign face to card
q_list.splice(r,1);
// remove face from list;
q.gotoAndStop(q.qface+1);
addChild(q);
}
}
让我们创建一个数组,ansArray
,它存储所有的Ans
。现在,无论何时创建一个新的ansArray
,将它添加到ansArray
,您将拥有一个任何其他函数都可以使用的更永久的引用
var ansArray:Array = []
function displayQues():void
{
//all that other crud
ansArray.push(q)
}