Agent007
17.12.2008, 13:41
Подскажите пожалуйста как можно реализовать.
Есть компонент HBox, внутрь него грузиться картинка, также есть зум этой картинки и при увеличении ее в HBox появляеться скролл я пытаюсь сделать drag&Drop внутри HBox. Натолкните хотябы на мысль)))
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
<mx:Script>
<![CDATA[
import flash.events.MouseEvent;
private var imageWidth:Number=0;
private var imageHeight:Number=0;
private function stopDr(event:MouseEvent):void
{
p_Image.stopDrag();
}
private function startDr(event:MouseEvent):void
{
if (p_Image.width>box.width){
p_Image.startDrag();
}
}
private function DrDr(d:Event):void
{
p_Image.addEventListener(MouseEvent.MOUSE_DOWN, startDr);
p_Image.addEventListener(MouseEvent.MOUSE_UP, stopDr);
}
private function ImZoom():void
{
p_Image.width=uint(imageWidth*hSlider.value/100);
p_Image.height=uint(imageHeight*hSlider.value/100);
}
]]>
</mx:Script>
<mx:Panel id="p_panel" height="417" width="430"
paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10">
<mx:HBox height="301" width="375" id="box">
<mx:Image id="p_Image" source ="@Embed('PK_icon_.png')" initialize="DrDr(event)"
creationComplete="imageWidth=p_Image.width; imageHeight=p_Image.height;" />
</mx:HBox>
<mx:HSlider id="hSlider" minimum="0" maximum="400" value="100"
dataTipPlacement="top"
tickColor="black"
snapInterval="1" tickInterval="10"
labels="['0%','400%']"
allowTrackClick="true"
liveDragging="true"
change="ImZoom();" width="376"/>
</mx:Panel>
</mx:Application>
Есть компонент HBox, внутрь него грузиться картинка, также есть зум этой картинки и при увеличении ее в HBox появляеться скролл я пытаюсь сделать drag&Drop внутри HBox. Натолкните хотябы на мысль)))
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
<mx:Script>
<![CDATA[
import flash.events.MouseEvent;
private var imageWidth:Number=0;
private var imageHeight:Number=0;
private function stopDr(event:MouseEvent):void
{
p_Image.stopDrag();
}
private function startDr(event:MouseEvent):void
{
if (p_Image.width>box.width){
p_Image.startDrag();
}
}
private function DrDr(d:Event):void
{
p_Image.addEventListener(MouseEvent.MOUSE_DOWN, startDr);
p_Image.addEventListener(MouseEvent.MOUSE_UP, stopDr);
}
private function ImZoom():void
{
p_Image.width=uint(imageWidth*hSlider.value/100);
p_Image.height=uint(imageHeight*hSlider.value/100);
}
]]>
</mx:Script>
<mx:Panel id="p_panel" height="417" width="430"
paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10">
<mx:HBox height="301" width="375" id="box">
<mx:Image id="p_Image" source ="@Embed('PK_icon_.png')" initialize="DrDr(event)"
creationComplete="imageWidth=p_Image.width; imageHeight=p_Image.height;" />
</mx:HBox>
<mx:HSlider id="hSlider" minimum="0" maximum="400" value="100"
dataTipPlacement="top"
tickColor="black"
snapInterval="1" tickInterval="10"
labels="['0%','400%']"
allowTrackClick="true"
liveDragging="true"
change="ImZoom();" width="376"/>
</mx:Panel>
</mx:Application>