0
플렉스의지도처럼 내 그림을 확대하려고하지만 모든 작업을 HSlider에서 확대하고 있습니다. Google지도처럼 내 그림을 확대하는 방법을 설명해 주시겠습니까?플렉스의지도처럼 확대/축소
여기 줌 내 코드입니다 : 내 줌 기능 :
private function doZoom(component:UIComponent,val:Number):void
{
if(component is Container)
{
var children:Array = Container(component).getChildren();
for(var i:int = 0; i < children.length; i++)
{
zoomChildren(children[i], val);
}
}
}
private function zoomChildren(component:UIComponent,val:Number):void
{
component.scaleX = val;
component.scaleY = val;
if(component is Container)
{
var children:Array = Container(component).getChildren();
for(var i:int = 0; i < children.length; i++)
{
doZoom(children[i], val);
}
}
}
public function applyZoom():void
{
if(pnl == null)
{
return;
}
doZoom(pnl,zoomSlider.value);
}
내 구성 요소 : 당신은 마우스 스크롤 휠 입력에 따라 구성 요소의 응답을 만들고 싶어한다는 것을 의미하는 경우
<s:VGroup>
<s:Button label="Загрузить SVG" click="PathsService.getPaths()"/>
<mx:Panel y="30" width="1300" height="600" id="pnl" title="Отрисовка SVG" borderColor="#008040" fontFamily="Arial" fontWeight="bold" fontSize="13">
<s:VGroup height="100%" width="100%" clipAndEnableScrolling="true">
<s:SpriteVisualElement width="100%" height="100%" id="spr" />
</s:VGroup>
</mx:Panel>
<s:HGroup height="100%" width="100%">
<s:Label text="Zoom" x="250"/>
<mx:HSlider id="zoomSlider" minimum=".1" value="1"
maximum="2" change="applyZoom()" width="180" x="300"/>
</s:HGroup>
</s:VGroup>