利用滑杆实现对Flex可视化组件的缩放

一、利用滑杆实现对Flex可视化组件的缩放主要涉及到两方面

第一:滑杆的change事件,及value等属性

第二:可视化组件的属性(scaleX,scaleY),scale本义为可伸缩的意思,这里0<=scaleX,scaleY<=1,是浮点数,自然scaleX是水平方向的缩放,scaleY是垂直方向的缩放。

 

二、下面介绍一下FLEX中的滑杆:

Flex提供了水平和垂直两种滑动杆,基本使用方法如下:

01 : mx:HSlider 创建水平滑动杆
02 : mx:VSlider 创建垂直滑动杆
03 : 设置滑动范围:minimum和 maximum属性
04 : 设置滑杆的初始值:value属性
05 : 设置最小滑动间隔为可以设置snapInterval属性(如snapInterval='2')
06 : 创建滑杆的标签可以用labels数组(Flex会均分显示标签位置)
07 : 默认创建的滑动杆都有ToolTip,需要禁止可使用:showToolTip='false'
08 : 如果需要每隔一段距离显示标记,可以设置tickInterval属性(如tickInterval='25')
09 : 可以同时使用两个箭头标记:thumbCount(1或2,默认值为1, thumbCount为2时可以动态设置最大值)
10 : 使用双箭头的时候设置初始值需要用values数组(如values='[ 20 , 80 ]')
11 : 可以利用键盘的左右(或上下)方向键来移动滑杆
12 : HOME键和END键(或PageDown和PageUp键)分别定位到最小值和最大值

 

13:默认,只有当释放滑杆的时候,change事件才会响应。如果设置liveDragging属性为True的话,就可以做到拖动滑杆的时候就可以响应change事件了。

 

三、举例,利用滑杆实现对画布的缩放,完整代码如下:

<?xml version="1.0" encoding="utf-8"?>
<!-- 测试对组件的缩放 这里举画面为例-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute" backgroundGradientAlphas="[1.0, 1.0]"
    backgroundGradientColors="[#03BF7A, #075F96]">

   <mx:Canvas  x="442" y="76" width="400" height="600" backgroundColor="#cc9933">
           <mx:Canvas  width="300" height="400" id="subCv"  backgroundColor="#FFFFFF"/>              
   </mx:Canvas>
   <mx:HSlider  x="442" y="700" width="200" toolTip="显示比例" value="100" top="0"
       id="hSld" minimum="10" maximum="200" snapInterval="1" change="doChange(event);" liveDragging="true"
        thumbCount="2"
        />           
   <mx:Script>
       <![CDATA[
           import mx.events.SliderEvent;
           private function doChange(evt:SliderEvent):void {
               trace(subCv.scaleX);
               trace(subCv.scaleY);
               subCv.scaleX = hSld.value/100;
               subCv.scaleY = hSld.value/100;
           }
       ]]>
   </mx:Script>
 </mx:Application>

 

四、参考资料:

1. URL: http://ningningzc.blogbus.com/logs/36643108.html, 介绍Flex的HSlider,VSlider

2. URL: http://bluewens.blog.163.com/blog/static/69913072008519115621817/, Flex制作Zoom缩放效果


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值