利用滑杆实现对Flex可视化组件的缩放
2009-10-07 14:29
218 查看
一、利用滑杆实现对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缩放效果
第一:滑杆的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缩放效果
相关文章推荐
- 利用flex+sevlet+fileupload组件实现文件的上传和下载
- Flex使用Scroller组件实现以鼠标为中心的缩放
- Flex使用Scroller组件实现以鼠标为中心的缩放
- 利用flex+sevlet+fileupload组件实现文件的上传和下载
- 利用Socket实现C++与Flex通信
- Android 百度地图开发(三)--- 实现比例尺功能和替换自带的缩放组件
- 如何利用BI实现人力资源可视化管理
- 【导读】本文介绍如何利用带进度条的ASP无组件实现断点续传下载,给出详细代码
- 利用react-redux实现react组件数据之间数据共享
- JSP利用组件实现文件上传的全攻略
- 可视化webpart基础开发——利用事件接收器实现同步操作两个文档库(添加、删除、修改文档)
- 可视化之一——利用R实现地图数据可视化
- Android Jni 利用OpenCV 实现图像尺寸缩放(二)
- 利用TitleWindow和VideoPlayer组件轻松实现视频弹出播放效果
- 利用Flex实现P2P文件传送
- 利用padding百分比继承父级元素宽度特性实现元素宽高比例缩放
- 利用R语言实现spark大数据分析与可视化
- cocos2dx游戏开发之利用多点触摸(实现缩放功能或者简单的手势识别)
- 编译原理利用Flex+Bison实现简单计算器
- Android中利用Matrix实现图片平移、缩放和旋转