关于FLEX中放大图片后,将放大后的图片,添加到新容器中,1,该怎么处理
关于FLEX中放大图片后,将放大后的图片,添加到新容器中,急急急!!1
关于FLEX中放大图片后,将放大后的图片,添加到新容器中
应用程序:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.MouseEvent;
import flash.geom.Matrix;
import mx.effects.Zoom;
import mx.events.FlexEvent;
import mx.managers.PopUpManager;
private var w:Number=0;
private var h:Number=0;
protected function setBit():void
{
}
protected function canvas_updateCompleteHandler(event:FlexEvent):void
{
w=canvas.width;
h=canvas.height;
var can:TCanvas=new TCanvas();
var bitmapdata:BitmapData=new BitmapData(w,h,true,0);
var mt:Matrix=new Matrix();
mt.scale(2,2);
var bigmap:Bitmap=new Bitmap(bitmapdata);
var images:Image=new Image();
images.source=bigmap;
bitmapdata.draw(can,mt);
can.bit=bigmap;
can.addChild(images);
//PopUpManager.addPopUp(can,this,true);
}
protected function button1_clickHandler(event:MouseEvent):void
{
var can:TCanvas=new TCanvas();
var zoom:Zoom=new Zoom();
PopUpManager.addPopUp(can,this,true);
zoom.duration = 1;
zoom.zoomWidthFrom = 1;
zoom.zoomWidthTo = 2;
zoom.zoomHeightFrom = 1;
zoom.zoomHeightTo = 2;
//zoom.play(new Array(canvas));
zoom.play(new Array(canvas),true);
}
]]>
</mx:Script>
<mx:VBox>
<mx:Canvas id="canvas" updateComplete="canvas_updateCompleteHandler(event)">
<mx:Image id="image" source="image\4.jpg" width="300" height="300">
</mx:Image>
</mx:Canvas>
<mx:Canvas id="temp">
</mx:Canvas>
<mx:Button label="reset" click="button1_clickHandler(event)"/>
</mx:VBox>
</mx:WindowedApplication>
组件接收并显示(此时有一个问题,容器放大的值没有传过去)
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="1000" height="500">
<mx:Script>
<![CDATA[
import flash.display.Bitmap;
import flash.events.MouseEvent;
[Bindable]
private var _bit:Bitmap=new Bitmap();
[Bindable]
private var oldX:Number,oldY:Number;
public function get bit():Bitmap
{
return _bit;
}
public function set bit(value:Bitmap):void
{
_bit = value;
}
protected function image_2_mouseDownHandler(event:MouseEvent):void
{
var b:Bitmap=new Bitmap();
oldX = event.stageX;
oldY = event.stageY;
}
protected function image_2_mouseMoveHandler(event:MouseEvent):void
{
if(event.buttonDown){
var x:Number = event.stageX - oldX;
var y:Number = event.stageY - oldY;
oldX = event.stageX;
oldY = event.stageY;
image_2.move(image_2.x+x,image_2.y+y);
}
}
]]>
</mx:Script>
<mx:Canvas id="canvas_2">
<mx:Image id="image_2" source="{_bit}" mouseDown="image_2_mouseDownHandler(event)" mouseMove="image_2_mouseMoveHandler(event)">
</mx:Image>
</mx:Canvas>
</mx:TitleWindow>
大家帮看一下!
关于FLEX中放大图片后,将放大后的图片,添加到新容器中
应用程序:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.MouseEvent;
import flash.geom.Matrix;
import mx.effects.Zoom;
import mx.events.FlexEvent;
import mx.managers.PopUpManager;
private var w:Number=0;
private var h:Number=0;
protected function setBit():void
{
}
protected function canvas_updateCompleteHandler(event:FlexEvent):void
{
w=canvas.width;
h=canvas.height;
var can:TCanvas=new TCanvas();
var bitmapdata:BitmapData=new BitmapData(w,h,true,0);
var mt:Matrix=new Matrix();
mt.scale(2,2);
var bigmap:Bitmap=new Bitmap(bitmapdata);
var images:Image=new Image();
images.source=bigmap;
bitmapdata.draw(can,mt);
can.bit=bigmap;
can.addChild(images);
//PopUpManager.addPopUp(can,this,true);
}
protected function button1_clickHandler(event:MouseEvent):void
{
var can:TCanvas=new TCanvas();
var zoom:Zoom=new Zoom();
PopUpManager.addPopUp(can,this,true);
zoom.duration = 1;
zoom.zoomWidthFrom = 1;
zoom.zoomWidthTo = 2;
zoom.zoomHeightFrom = 1;
zoom.zoomHeightTo = 2;
//zoom.play(new Array(canvas));
zoom.play(new Array(canvas),true);
}
]]>
</mx:Script>
<mx:VBox>
<mx:Canvas id="canvas" updateComplete="canvas_updateCompleteHandler(event)">
<mx:Image id="image" source="image\4.jpg" width="300" height="300">
</mx:Image>
</mx:Canvas>
<mx:Canvas id="temp">
</mx:Canvas>
<mx:Button label="reset" click="button1_clickHandler(event)"/>
</mx:VBox>
</mx:WindowedApplication>
组件接收并显示(此时有一个问题,容器放大的值没有传过去)
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="1000" height="500">
<mx:Script>
<![CDATA[
import flash.display.Bitmap;
import flash.events.MouseEvent;
[Bindable]
private var _bit:Bitmap=new Bitmap();
[Bindable]
private var oldX:Number,oldY:Number;
public function get bit():Bitmap
{
return _bit;
}
public function set bit(value:Bitmap):void
{
_bit = value;
}
protected function image_2_mouseDownHandler(event:MouseEvent):void
{
var b:Bitmap=new Bitmap();
oldX = event.stageX;
oldY = event.stageY;
}
protected function image_2_mouseMoveHandler(event:MouseEvent):void
{
if(event.buttonDown){
var x:Number = event.stageX - oldX;
var y:Number = event.stageY - oldY;
oldX = event.stageX;
oldY = event.stageY;
image_2.move(image_2.x+x,image_2.y+y);
}
}
]]>
</mx:Script>
<mx:Canvas id="canvas_2">
<mx:Image id="image_2" source="{_bit}" mouseDown="image_2_mouseDownHandler(event)" mouseMove="image_2_mouseMoveHandler(event)">
</mx:Image>
</mx:Canvas>
</mx:TitleWindow>
大家帮看一下!