as3鼠标控制元件移动
importflash.events.Event;importflash.events.MouseEvent;varmc:MovieClip=this.getChildB...
import flash.events.Event;import flash.events.MouseEvent;
var mc:MovieClip = this.getChildByName("_2") as MovieClip;
mc.addEventListener(MouseEvent.MOUSE_OVER,over);//添加鼠标侦听事件
mc.addEventListener(MouseEvent.MOUSE_OUT,out);
addEventListener(Event.ENTER_FRAME,enterframe);
function over(e:Event):void
{
if(stage.mouseX<mc.x)
{
}
}
function over(e:Event):void//鼠标移进事件
{
mc.play();
//mc.x++;
}
function out(e:Event):void//鼠标移出事件
{
if(mc.currentFrame == mc.totalFrames)//当当前帧数等于 总帧数的时候 停止
{
mc.stop();
}
}
如何让鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动
function enterframe(e:Event):void
{
if(stage.mouseX<mc.x)
{
mc.x -=1;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x +=1;
}
} 展开
var mc:MovieClip = this.getChildByName("_2") as MovieClip;
mc.addEventListener(MouseEvent.MOUSE_OVER,over);//添加鼠标侦听事件
mc.addEventListener(MouseEvent.MOUSE_OUT,out);
addEventListener(Event.ENTER_FRAME,enterframe);
function over(e:Event):void
{
if(stage.mouseX<mc.x)
{
}
}
function over(e:Event):void//鼠标移进事件
{
mc.play();
//mc.x++;
}
function out(e:Event):void//鼠标移出事件
{
if(mc.currentFrame == mc.totalFrames)//当当前帧数等于 总帧数的时候 停止
{
mc.stop();
}
}
如何让鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动
function enterframe(e:Event):void
{
if(stage.mouseX<mc.x)
{
mc.x -=1;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x +=1;
}
} 展开
3个回答
展开全部
function enterframe(e:Event):void
{
if(stage.mouseX<mc.x + mc.width/2)
{
mc.x--;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x++;
}
}
这样就行了啊 没必要添加鼠标监听事件,你只是为了希望他鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动吧?还有其他功能么?还有问题可以再追问下吧
我自己写了一个鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动的代码,我发给你看看,库里面Movieclip的AS链接名叫testFire:
import flash.display.MovieClip;import flash.events.Event;
var mc:MovieClip = new testFire();
addChild(mc);
mc.x = stage.stageWidth/2 - mc.width/2;
mc.y = stage.stageHeight/2 - mc.height/2;
addEventListener(Event.ENTER_FRAME , whenEnterFrame);
function whenEnterFrame(e:Event):void
{
if(stage.mouseX<mc.x + mc.width/2)
{
mc.x--;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x++;
}
}
{
if(stage.mouseX<mc.x + mc.width/2)
{
mc.x--;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x++;
}
}
这样就行了啊 没必要添加鼠标监听事件,你只是为了希望他鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动吧?还有其他功能么?还有问题可以再追问下吧
我自己写了一个鼠标在mc左侧的时候 mc向左侧移动 右侧同理向右侧移动的代码,我发给你看看,库里面Movieclip的AS链接名叫testFire:
import flash.display.MovieClip;import flash.events.Event;
var mc:MovieClip = new testFire();
addChild(mc);
mc.x = stage.stageWidth/2 - mc.width/2;
mc.y = stage.stageHeight/2 - mc.height/2;
addEventListener(Event.ENTER_FRAME , whenEnterFrame);
function whenEnterFrame(e:Event):void
{
if(stage.mouseX<mc.x + mc.width/2)
{
mc.x--;
}else if(stage.mouseX>mc.x+mc.width/2)
{
mc.x++;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询