2015-06-20 46 views
0

不知道这是否可能,但会问:是否有一种方法可以通过以下方式调整swf文件中的符号大小(在本例中为影片剪辑):用光标点击并拖动它?Flash CS6/AS3:拖动和调整矩形动画片段的大小

我需要做的事情之一是在我发布的swf文件中有一个矩形,可以通过单击并拖动矩形的边或角来调整高度和宽度的大小。但是,不确定如何做到这一点。我可以看的任何教程,或者可能有些容易做/解释的东西?现在从我在这个问题上发现的一点点来看,这似乎是一件复杂的事情。

谢谢。

+0

正是你尝试过什么到目前为止? – null

+0

你为什么不粘贴一些代码? – harilalkm

+0

null - 我试过谷歌搜索解决方案,但我发现大部分处理调整整个SWF文件。我确实发现了一些似乎在处理我所特别提到的问题,但回应很少,他们倾向于进入一些复杂的代码对话和例子,这些基本上让我茫然地看着我的屏幕。 harilalkm - 我没有任何代码粘贴,因为我不知道从哪里开始(除了像上面那样在Google上查找解决方案)。 @Lodewijck - 对我来说实际上是有意义的(这说的很多)。我会试一试,谢谢。 – dzinermachine

回答

0

没有标准的选择,所以你必须自己编码。我的建议:

您可以添加一个小的MovieClip,看起来像一个箭头,紧挨着您的可伸缩项目。使此箭头可水平拖动,并且每当您拖动此箭头时,根据箭头的新位置更新可缩放项目的宽度。在这种情况下,您可以水平缩放您的项目,但您可以使用相同的方法使其垂直或对角缩放。

0

@Lodewijck - 你的建议奏效,谢谢!

这可能不是写代码的最佳方式,但它的工作:

stop(); 

import flash.events.MouseEvent; 

stage.addEventListener(MouseEvent.MOUSE_MOVE,resize1); 
this.addEventListener(MouseEvent.MOUSE_DOWN, startDragging, true); 
this.addEventListener(MouseEvent.MOUSE_UP, stopDragging, true); 

function startDragging(e:MouseEvent) { 

dragsquare.startDrag(); 

} 

function stopDragging(e:MouseEvent) { 

dragsquare.stopDrag(); 

} 

function resize1(E:MouseEvent){ 
square1.width=dragsquare.x - square1.x; 
square1.height=dragsquare.y - square1.y; 
}