我有一个对象,其中我在一个图层上有矩形,在另一个图层上跟随代码:
import flash.events.Event;
this.myMouseMove = function( e:Event ) {
if(Object(this).currentFrame == 1) {
Object(this).play();
}
}
this.overlay.addEventListener(MouseEvent.MOUSE_MOVE,this.myMouseMove);
And Object(this).play()或检查当前帧不起作用,也不跟踪函数外部的值定义。我该如何处理从中调用事件的movieclip?
答案 0 :(得分:1)
使用活动的currentTarget属性:
myMouseMove = function( e:Event ):void {
// here i suppose that your overlay object is a MovieClip
var mc:MovieClip=MovieClip(e.currentTarget)
if(mc.currentFrame == 1) {
mc.play();
}
}
N.B。只要有可能使用强类型而不是Object
施放
答案 1 :(得分:0)
您是否尝试过MovieClip()
代替Object()
?当您期望(可能强制的)对象充当MovieClip
时,它更合适。
此外,您可能无法处理您想要的对象。您需要指定手头的对象。
尝试将其更改为以下内容:
import flash.events.Event;
myObjectName.myMouseMove = function(e:Event):void {
if(myObjectName.currentFrame == 1)
myObjectName.play();
};
其中myObjectName
是包含矩形的对象的实例名称。