1

我一直试图让这个工作,我似乎无法弄清楚。有一个Image控件,当我单击它时,我需要放大(使用单击鼠标的中心/变换点)。

我的缩放过渡效果很好,但是当我设置transformX& tranformY(带autoCenterTransform假)时,它不会放大到那个点。

这是我的代码,仅放大(而不是特定点)

<fx:Script>
        <![CDATA[

            protected function imgLogo_clickHandler(event:MouseEvent):void
            {
                transformer.play();
            }           
        ]]>
    </fx:Script>

    <fx:Declarations>       
        <s:Parallel id="transformer" target="{imgLogo}">
            <s:Scale scaleXBy="0.5" scaleYBy="0.5" />           
        </s:Parallel>
    </fx:Declarations>

    <mx:Image id="imgLogo"   width="250" x="100" y="100"
            maintainAspectRatio="true" source="@Embed('src/logo.png')"      
            click="imgLogo_clickHandler(event)"  />

任何帮助是极大的赞赏。谢谢

4

1 回答 1

2

经过进一步的挖掘,我能够弄清楚这一点。您需要将transformX和设置transformY为舞台坐标(不是本地坐标)MouseEvent

protected function imgLogo_clickHandler(event:MouseEvent):void
{
     scaleImg.transformX = event.stageX;
     scaleImg.transformY = event.stageY;
     transformer.play();
}  

并修改Scale类似的声明

<s:Scale id="scaleImg" scaleXBy="0.5" scaleYBy="0.5" autoCenterTransform="false" />    
于 2010-06-22T14:50:53.153 回答