2013-04-30 19 views
0

我在舞台上有一个对象,点击时我希望它移动到舞台的中心。
我知道我应该使用:如何在flex中将对象移动到舞台的中心4

<s:move /> 

但我就是不知道怎么办!

+3

哪个组件是此对象的父组件?它只是一个空的Flex应用程序,还是你有另一个对象,如Group或BorderContainer? – Anton 2013-04-30 20:35:20

回答

0

而不是使用属性x ...我用鼠标x和一切按预期工作!

2

下面是一个示例应用程序,它可以实现您想要的功能,您可以使用移动效果的属性进行游戏。

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       xmlns:mx="library://ns.adobe.com/flex/mx" 
       creationComplete="init()"> 

    <fx:Declarations> 
     <!-- Place non-visual elements (e.g., services, value objects) here --> 
     <s:Move id="moveEffect"></s:Move> 
    </fx:Declarations> 


    <s:BorderContainer id="box"> 

    </s:BorderContainer> 


    <fx:Script> 
     <![CDATA[ 
     import flash.events.MouseEvent; 

     private function init():void 
     { 
      box.setStyle("backgroundColor", "#ff0000"); 
      box.width = 200; 
      box.height = 200; 
      box.addEventListener(MouseEvent.CLICK, onClick); 

      moveEffect.xTo = (width-box.width)/ 2; 
      moveEffect.yTo = (height-box.height)/2; 
     } 

     private function onClick(e:MouseEvent):void 
     { 
      moveEffect.play([box]); 
     } 

     ]]> 
    </fx:Script> 

</s:Application> 

希望有帮助。