2013-04-03 146 views
1

我有一个使用EaselJS在容器内部创建填充(矩形)和文本的项目。我的目标是使这个矩形和文本拖动到画布上。这已经完成并且运作良好。 我的问题是,当我尝试使用onMouseOver处理程序使用scaleXscaleY来调整矩形的大小时。这确实完成了,但矩形只是远离它的初始点到其他位置...使用EaselJS调整可拖动填充的大小

我读过我需要使用regXregY属性来覆盖此,但在我的代码的上下文中我不能。有人可以告诉我我做错了什么吗?

这是我的JSFiddle example,所以你可以看到究竟发生了什么。只需将鼠标拖到矩形上即可查看我的意思。这一定很容易实现,但我不确定如何,请帮助我。

谢谢!!! =)

回答

4

你的问题是,你是不是画你rects 0 | 0,“标准”的方式是画出你的形状从0开始|通过.x.y

某处0,然后定位本身的形状
rectOpt0.graphics.beginFill("#C51A76").rect(140,160,78,35); 
=> changed to 
rectOpt0.graphics.beginFill("#C51A76").rect(0,0,78,35); 

并且另外我然后放置在容器中在140 | 160 +的至REGx/Y偏移量:

containerOpt0.regX = 78/2; //regX/Y to have is scale to the center point 
containerOpt0.regY = 35/2; 
containerOpt0.x = 140 + 78/2; //placement + regX offset/correction 
containerOpt0.y = 160 + 35/2; 

这里是更新小提琴:http://jsfiddle.net/WfMGr/2/

+1

这正是我所需要的,现在我明白我做错了什么。非常感谢 ;) – Metafaniel

相关问题