首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在鼠标位置将影片剪辑居中

在鼠标位置将影片剪辑居中
EN

Stack Overflow用户
提问于 2011-10-22 17:41:36
回答 2查看 1.2K关注 0票数 0

我正在使用Action script3.0来设置一个实例(MovieClip类)的动画,让它跟随鼠标正电子,这个实例的左上角跟随着鼠标。现在在左上角有一个十字,我猜鼠标会跟随这个十字,但我不能改变实例/原始对象中十字的位置。有人知道如何使该实例的中心跟随鼠标光标移动吗?感谢所有人在这个话题上的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-24 22:06:21

我使用这个代码。

代码语言:javascript
运行
复制
import flash.display.Shape;
import flash.events.Event;


var easing:Number = .25;                    // inching coefficient

var sp:Shape = super.addChild(new Shape()) as Shape;        // draw circle
sp.graphics.beginFill(0x0,.6);
sp.graphics.drawCircle(40,40,40);

sp.x = super.stage.stageWidth - sp.width >> 1;
sp.y = super.stage.stageHeight - sp.height >> 1;

super.stage.addEventListener(Event.ENTER_FRAME, update, false, 0, true);

function update(e:Event):void
{
    var targetX:int = super.stage.mouseX - (sp.width >> 1);
    var targetY:int = super.stage.mouseY - (sp.height >> 1);

    sp.x += (targetX - sp.x) * easing;
    sp.y += (targetY - sp.y) * easing;
}
票数 0
EN

Stack Overflow用户

发布于 2011-10-22 19:24:54

解决方案1:不要改变注册点的位置(十字)。将影片剪辑的内容更改为与中心位置对齐。试一下,你就会明白了。

解决方案2:使用偏移量移动实例。就像这样。

代码语言:javascript
运行
复制
myInstance.x = mouseX - (myInstance.width * 0.5);
myInstance.y = mouseY - (myInstance.height * 0.5);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7858631

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档