Arrays 如何正确地将数组传递给类
嗨,我试着把我的车送到教室。我试着通过它,它看起来是这样的: 第32帧之前是一些动画Arrays 如何正确地将数组传递给类,arrays,flash,actionscript-3,class,flash-cs5,Arrays,Flash,Actionscript 3,Class,Flash Cs5,嗨,我试着把我的车送到教室。我试着通过它,它看起来是这样的: 第32帧之前是一些动画 import flash.events.MouseEvent; import fl.transitions.Tween; import flash.display.MovieClip; import Wyjazd; stop(); ofertaBTN.addEventListener(MouseEvent.CLICK, wyskok); function wyskok(e:MouseEvent) {
import flash.events.MouseEvent;
import fl.transitions.Tween;
import flash.display.MovieClip;
import Wyjazd;
stop();
ofertaBTN.addEventListener(MouseEvent.CLICK, wyskok);
function wyskok(e:MouseEvent)
{
var vektor:Array = new Array(I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII);
var menu:Wyjazd = new Wyjazd(vektor);
}
阶级
但是,我还是犯了错误#1063,我们必须更深入。然后我更改帧代码:
import flash.events.MouseEvent;
import fl.transitions.Tween;
import flash.display.MovieClip;
stop();
ofertaBTN.addEventListener(MouseEvent.CLICK, wyskok);
function wyskok(e:MouseEvent)
{
var vektor:Array = [I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII];
trace(vektor.lenght);
//var menu:Wyjazd = new Wyjazd(vektor);
}
现在,我在一个非构造函数上尝试了错误#1007实例化。在site_fla::main timeline/wyskok()上,您似乎想引用数组中的每个值:
new Array('I','II','III','IV','V','VI','VII','VIII','IX','X','XI','XII');
看起来您想引用数组中的每个值:
new Array('I','II','III','IV','V','VI','VII','VIII','IX','X','XI','XII');
为了缩小范围,我建议注释掉Wyjazd函数代码,并用trace(ar.length)等跟踪语句替换它 看看你是否可以运行它,以及它是否能跟踪数组长度。如果可以,那么问题不在于将数组传递给函数 我能够测试这个,当我创建这个时它对我有效,所以这就是为什么我提出上面的建议 如果它仍然抛出相同的错误,那么你能给我提供更多的信息吗
为了缩小范围,我建议注释掉Wyjazd函数代码,并用trace(ar.length)等跟踪语句替换它 看看是否可以运行该函数,以及它是否可以跟踪数组长度。如果可以,那么问题不在于将数组传递给函数 我能够测试这个,当我创建这个时它对我有效,所以这就是为什么我提出上面的建议 如果它仍然抛出相同的错误,那么你能给我提供更多的信息吗
var vektor:Array = [I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII];
另外,我认为这一行是不正确的:
var xX = ar.x;
顺便说一句,你也可以改变这个
// for (var i:Number = 0; i < 12; i++)
for (var i:int = 0; i < ar.length; i++)
//for(变量i:Number=0;i<12;i++)
对于(变量i:int=0;i
试试这个:
var vektor:Array = [I,II,III,IV,V,VI,VII,VIII,IX,X,XI,XII];
另外,我认为这一行是不正确的:
var xX = ar.x;
顺便说一句,你也可以改变这个
// for (var i:Number = 0; i < 12; i++)
for (var i:int = 0; i < ar.length; i++)
//for(变量i:Number=0;i<12;i++)
对于(变量i:int=0;i
对于从IDE实例化的符号,不能有参数,请检查此类似问题并回答:
您必须尝试以不同的方式初始化类,但这实际上取决于您的使用情况
例如:
public class Wyjazd extends MovieClip
{
public function Wyjazd(ar:Array=null) // use a default parameter
{
if (ar!=null) init(ar) // call your init function
}
public function init(ar:Array):void {
var xX = ar.x;
var time:Number = 2;
var offset:Number = 0;
for (var i:Number = 0; i < 12; i++)
{
var tween:Tween = new Tween(ar[i],"x",Sine.easeOut,ar[i].x,266.65 + offset,time,true);
ar[i].addEventListener(MouseEvent.MOUSE_OVER,podswietlenie);
ar[i].addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
time += 0.2;
offset += 15.25;
}
function zgaszenie(e:MouseEvent)
{
ar[i].filters = [];
}
function podswietlenie(e:MouseEvent)
{
var pods:GlowFilter = new GlowFilter ;
pods.inner = false;
pods.color = 0x000000;
pods.knockout = false;
ar[i].filters = [pods];
}
/*var targetLabel:String;
ar.addEventListener(MouseEvent.MOUSE_OVER, podswietlenie);
ar.addEventListener(MouseEvent.MOUSE_OUT, zgaszenie);
ar.addEventListener(MouseEvent.CLICK,przejscie);
function przejscie(e:MouseEvent)
{
targetLabel= e.currentTarget.name;
tween = new Tween(ar,"x",Sine.easeOut,ar.x,xX,time,true);
trace(targetLabel);
}*/
}
}
public类Wyjazd扩展了MovieClip
{
公共函数Wyjazd(ar:Array=null)//使用默认参数
{
如果(ar!=null)init(ar)//调用您的init函数
}
公共函数init(ar:Array):void{
var xX=ar.x;
变量时间:数值=2;
变量偏移量:数值=0;
对于(变量i:Number=0;i<12;i++)
{
变量tween:tween=新tween(ar[i],“x”,Sine.easeOut,ar[i].x,266.65+偏移量,时间,真);
ar[i].addEventListener(MouseEvent.MOUSE_-OVER,podswietlenie);
ar[i].addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
时间+=0.2;
偏移量+=15.25;
}
函数zgaszenie(e:MouseEvent)
{
ar[i]。过滤器=[];
}
功能podswietlenie(e:MouseeEvent)
{
var pods:GlowFilter=新的GlowFilter;
pods.inner=false;
pods.color=0x000000;
pods.knockout=false;
ar[i].过滤器=[pods];
}
/*var-targetLabel:String;
ar.addEventListener(MouseEvent.MOUSE_OVER,podswietlenie);
ar.addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
ar.addEventListener(MouseEvent.CLICK,przejscie);
函数przejscie(e:MouseEvent)
{
targetLabel=e.currentTarget.name;
tween=新tween(ar,“x”,正弦输出,ar.x,xX,时间,真);
跟踪(目标标签);
}*/
}
}
}对于从IDE实例化的符号,不能有参数,请检查此类似问题并回答: 您必须尝试以不同的方式初始化类,但这实际上取决于您的使用情况 例如:
public class Wyjazd extends MovieClip
{
public function Wyjazd(ar:Array=null) // use a default parameter
{
if (ar!=null) init(ar) // call your init function
}
public function init(ar:Array):void {
var xX = ar.x;
var time:Number = 2;
var offset:Number = 0;
for (var i:Number = 0; i < 12; i++)
{
var tween:Tween = new Tween(ar[i],"x",Sine.easeOut,ar[i].x,266.65 + offset,time,true);
ar[i].addEventListener(MouseEvent.MOUSE_OVER,podswietlenie);
ar[i].addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
time += 0.2;
offset += 15.25;
}
function zgaszenie(e:MouseEvent)
{
ar[i].filters = [];
}
function podswietlenie(e:MouseEvent)
{
var pods:GlowFilter = new GlowFilter ;
pods.inner = false;
pods.color = 0x000000;
pods.knockout = false;
ar[i].filters = [pods];
}
/*var targetLabel:String;
ar.addEventListener(MouseEvent.MOUSE_OVER, podswietlenie);
ar.addEventListener(MouseEvent.MOUSE_OUT, zgaszenie);
ar.addEventListener(MouseEvent.CLICK,przejscie);
function przejscie(e:MouseEvent)
{
targetLabel= e.currentTarget.name;
tween = new Tween(ar,"x",Sine.easeOut,ar.x,xX,time,true);
trace(targetLabel);
}*/
}
}
public类Wyjazd扩展了MovieClip
{
公共函数Wyjazd(ar:Array=null)//使用默认参数
{
如果(ar!=null)init(ar)//调用您的init函数
}
公共函数init(ar:Array):void{
var xX=ar.x;
变量时间:数值=2;
变量偏移量:数值=0;
对于(变量i:Number=0;i<12;i++)
{
变量tween:tween=新tween(ar[i],“x”,Sine.easeOut,ar[i].x,266.65+偏移量,时间,真);
ar[i].addEventListener(MouseEvent.MOUSE_-OVER,podswietlenie);
ar[i].addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
时间+=0.2;
偏移量+=15.25;
}
函数zgaszenie(e:MouseEvent)
{
ar[i]。过滤器=[];
}
功能podswietlenie(e:MouseeEvent)
{
var pods:GlowFilter=新的GlowFilter;
pods.inner=false;
pods.color=0x000000;
pods.knockout=false;
ar[i].过滤器=[pods];
}
/*var-targetLabel:String;
ar.addEventListener(MouseEvent.MOUSE_OVER,podswietlenie);
ar.addEventListener(MouseEvent.MOUSE_OUT,zgaszenie);
ar.addEventListener(MouseEvent.CLICK,przejscie);
函数przejscie(e:MouseEvent)
{
targetLabel=e.currentTarget.name;
tween=新tween(ar,“x”,正弦输出,ar.x,xX,时间,真);
跟踪(目标标签);
}*/
}
}
}不,因为这些是对象,这是对象数组。ArgumentError:Error#1063:Wyjazd()中的参数列表不匹配。除1外,得到0。确实通过exa复制了代码吗