如何只水平拖动符号?

时间:2014-09-15 01:06:55

标签: actionscript-3 flash flash-cs6

我目前正试图制作一个非常简单的拖放Flash程序。 我制作了一个程序,你可以用鼠标拖动一个正方形。

但是我希望广场只能水平移动。我一直试图在互联网上找到一些东西,而没有找到解决方案。所以我想也许你们可以帮助我......

这就是我所做的:

我首先制作了一个正方形,并将其标记为:" blok"

然后我在同一场景中编写了以下代码:

var myblock:Sprite = blok;

this.addChild(myblock);
myblock.addEventListener(MouseEvent.MOUSE_DOWN, startMove);

function startMove(evt:MouseEvent):void 
{
myblock.startDrag();
}

myblock.addEventListener(MouseEvent.MOUSE_UP, stopMove);

function stopMove(e:MouseEvent):void 
{
myblock.stopDrag();
}

1 个答案:

答案 0 :(得分:6)

startDrag采用边界框参数。试试这个:

function startMove(evt:MouseEvent):void 
{
  myblock.startDrag(false, new Rectangle(0, myblock.y, 1000, myblock.y));
}

0和1000是最小值和最大值x,代替您在应用程序中需要使用的任何值。

Adobe documentation for Sprite class