如题,在flex里怎样把画布上的东西放大或者缩小 ?
解决方案 »
- 请问怎样才能通过一个按钮,来浏览选择文件夹,并同时获取这个文件夹的目录名?
- strut2跟ajax整合,返回的结果是整个网页??
- MyEclipse7.1 怎么配置GWT开发环境啊
- 不知道为什么不显示表格。 我在线等!!!
- 要做一个个人网站 想做成RIA的 请问
- weblogic server 8.1+Jbuilder 2005 的配置问题
- 请求关于SOAP/API/XML/MYSQL之间的一些问题,主要是理不清它们之间的关系,请求帮助!
- servlet获取form action的字符串问题~
- [SmartMenu] 如何在刷新树的同时保持原来的展开样式?
- 求救!!!!在JBuilder6中,怎样连接MySql数据库?请各位前辈帮忙呀!(谢谢!)
- 做好了一个静态的Html,添加显示数据库内容的jsp代码行吗
- 程序变慢
不让他们的坐标改变,也就是相对于canvas的坐标不变?还有能不能实现canvas的背景
网格可以放大、缩小啊,谢谢!
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalAlign="top"
horizontalAlign="center" backgroundGradientColors="[0x000000,0x323232]" paddingTop="0" viewSourceURL="srcview/index.html">
<mx:Script>
<![CDATA[
private function smoothImage(ev:Event):void{
//set image smoothing so image looks better when transformed.
var bmp:Bitmap = ev.target.content as Bitmap;
bmp.smoothing = true;
}
]]>
</mx:Script>
<mx:Resize id="expand" target="{img}" widthTo="120" heightTo="120"/>
<mx:Resize id="contract" target="{img}" widthTo="24" heightTo="24"/>
<mx:Panel title="Resize Effect" layout="vertical" color="0xffffff" borderAlpha="0.15" width="500" height="230"
paddingTop="5" paddingRight="10" paddingBottom="5" paddingLeft="10" horizontalAlign="center">
<mx:Text width="100%" color="0x323232" textAlign="center" paddingBottom="5"
text="Use the Button controls to resize the image."/> <mx:Image id="img" width="24" height="24" source="@Embed('images/boots.jpg')" creationComplete="smoothImage(event);"/>
<mx:ControlBar horizontalAlign="center" paddingTop="3" paddingBottom="3">
<mx:Button label="Expand" click="expand.end(); expand.play();"/>
<mx:Button label="Contract" click="contract.end(); contract.play();"/>
</mx:ControlBar>
</mx:Panel>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
private var zwidth:int = 1;
private var zheight:int = 1;
public function doExpandZoom(event:MouseEvent){
if(zwidth < 1){
zwidth = zwidth * 2;
zheight = zheight * 2;
}else{
zwidth++;
zheight++;
}
zoomExpand.originX = 0;
zoomExpand.originY = 0;
zoomExpand.zoomWidthFrom = panel.width;
zoomExpand.zoomHeightFrom = panel.height;
zoomExpand.zoomWidthTo = zwidth ;
zoomExpand.zoomHeightTo = zheight ;
zoomExpand.play();
}
public function doContractZoom(event:MouseEvent){
if(zwidth == 1){
zwidth = zwidth * 0.5;
zheight = zheight * 0.5;
}else{
zwidth--;
zheight--;
}
zoomExpand.originX = 0;
zoomExpand.originY = 0;
zoomExpand.zoomWidthFrom = panel.width;
zoomExpand.zoomHeightFrom = panel.height;
zoomExpand.zoomWidthTo = zwidth ;
zoomExpand.zoomHeightTo = zheight ;
zoomExpand.play();
}
]]>
</mx:Script>
<mx:Zoom id="zoomExpand" target="{panel}" />
<mx:Panel id="panel" x="0" y="0" width="250" height="200" >
<mx:Button label="Expand" click="doExpandZoom(event)"/>
<mx:Button label="Contract" click="doContractZoom(event)"/>
</mx:Panel>
</mx:Application>
private var _zWidth:Number = 1;
private var _zHeight:Number =1;
[Bindable]
private var _flag:Number = 1;
/**
* 初始化创建zoom实例对象
*/
private function init():void
{
_zoom = new Zoom();
}
/**
*显示隐藏网格
*/
private function showGrid():void
{
if (this.showGridCheckBox.selected)
this.parentDocument.canFlowChart.onInitialize();
else
this.parentApplication.canFlowChart.clearbg();
}
/**
* 放大、缩小画布上的组件
*
*/
private function zoomOut():void
{
_flag += .25;
zoom();
}
private function zoomIn():void
{
_flag -= .25;
zoom();
}
private function zoom():void
{
_zoom.stop();
// _zoom.originX =0;
// _zoom.originY = 0;
_zoom.zoomWidthFrom = _zWidth;
_zoom.zoomHeightFrom = _zHeight;
_zoom.zoomWidthTo = _flag;
_zoom.zoomHeightTo = _flag;
//显示延迟时间
_zoom.duration = 100;
_zoom.targets = this.parentApplication.canFlowChart.getChildren();
_zoom.play();
_zWidth = _flag;
_zHeight = _flag;
}
我的代码