包 | mx.effects |
类 | public class Zoom |
继承 | Zoom TweenEffect Effect EventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
从 Flex 4.0 开始,Adobe 建议您使用 spark.effects.Scale 类来替代此类。 |
Zoom 效果放大或缩小中心点上的对象。
将 Zoom 效果应用到使用系统字体呈示的文本时,Flex 缩放整个磅值之间的文本。尽管将 Zoom 效果应用到文本时不必使用嵌入的字体,但将 Zoom 效果应用到嵌入的字体时,它将更加平滑。
注意:当 Container.autoLayout
属性为 false
时,Zoom 效果不起作用。
The <mx:Zoom>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Zoom id="ID" captureRollEvents="false|true" originX="Calculated" originY="Calculated" zoomWidthFrom="0.01" zoomWidthTo="1.0" zoomHeightFrom="0.01" zoomHeightTo="1.0" />
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
captureRollEvents : Boolean
如果为 true,将阻止 Flex 在鼠标未发生过移动的情况下调度 rollOut 和 rollOver 事件。 | Zoom | ||
className : String [只读]
效果类的名称,如“Fade”。 | Effect | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
customFilter : mx.effects:EffectTargetFilter
指定一个 EffectTargetFilter 类型的自定义滤镜对象,效果将使用此对象来确定播放效果的目标。 | Effect | ||
duration : Number
效果的持续时间(以毫秒为单位)。 | Effect | ||
easingFunction : Function = null
动画的缓动函数。 | TweenEffect | ||
effectTargetHost : mx.effects:IEffectTargetHost
一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。 | Effect | ||
filter : String
指定用于过滤效果目标的算法。 | Effect | ||
hideFocusRing : Boolean
确定在开始播放效果时,效果是否应隐藏对焦环。 | Effect | ||
instanceClass : Class
一个 Class 类型的对象,用于指定此效果类的效果实例类。 | Effect | ||
isPlaying : Boolean [只读]
一个只读标志,如果当前正在播放效果的任一实例,则为 true;否则,则为 false。 | Effect | ||
originX : Number
代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 x 位置的数字。 | Zoom | ||
originY : Number
代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 y 位置的数字。 | Zoom | ||
perElementOffset : Number
在效果的第一个目标之后,其他效果目标的附加延迟(以毫秒为单位)。 | Effect | ||
playheadTime : Number
效果的当前时间位置。 | Effect | ||
relevantProperties : Array
一个属性名称 Array,执行过滤时将使用这些名称。 | Effect | ||
relevantStyles : Array
一个样式名称 Array,执行过滤时将使用这些名称。 | Effect | ||
repeatCount : int = 1
效果的重复次数。 | Effect | ||
repeatDelay : int = 0
重复播放效果前需要等待的时间(以毫秒为单位)。 | Effect | ||
startDelay : int = 0
开始播放效果前需要等待的时间(以毫秒为单位)。 | Effect | ||
suspendBackgroundProcessing : Boolean = false
如果为 true,则在播放效果时阻止所有背景处理。 | Effect | ||
target : Object
要应用此效果的对象。 | Effect | ||
targets : Array
一个对象 Array,这些对象都是效果的目标。 | Effect | ||
triggerEvent : Event
如果触发了某个效果,则此项目是由 EffectManager 传递给此 Effect 的 Event 对象;如果 EffectManager 当前没有播放此效果,则为 null。 | Effect | ||
zoomHeightFrom : Number
一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行高度缩放时的缩放比例。 | Zoom | ||
zoomHeightTo : Number
一个介于 0.01 和 1.0 之间的百分比数值,代表完成高度缩放时的缩放比例。 | Zoom | ||
zoomWidthFrom : Number
一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行宽度缩放时的缩放比例。 | Zoom | ||
zoomWidthTo : Number
一个介于 0.01 和 1.0 之间的百分比数值,代表完成宽度缩放时的缩放比例。 | Zoom |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | Zoom | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
捕获效果目标上相关属性的当前值,并将这些值另存为结束值。 | Effect | ||
捕获另一组目标相关属性的当前值。在运行数据更改效果时,Flex 将使用此函数。
| Effect | ||
捕获效果目标上相关属性的当前值。 | Effect | ||
创建一个效果实例并对其进行初始化。 | Effect | ||
获取一个目标对象 Array,并对每个目标调用 createInstance() 方法。 | Effect | ||
删除实例中的事件侦听器,然后从实例列表中删除该实例。 | Effect | ||
将事件调度到事件流中。 | EventDispatcher | ||
中断当前正在播放的效果,立即跳转到该效果的末尾。 | Effect | ||
返回一个字符串 Array,其中每个 String 都是被此效果更改的属性的名称。 | Effect | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
暂停效果,直到调用 resume() 方法。 | Effect | ||
开始播放效果。 | Effect | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
在效果由 pause() 方法暂停后继续播放效果。 | Effect | ||
逆序播放效果;如果当前正在播放效果,则从该效果的当前位置开始逆序播放。 | Effect | ||
设置循环操作动态属性的可用性。 | Object | ||
停止播放效果,使效果目标保持当前状态。 | Effect | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
captureRollEvents | 属性 |
public var captureRollEvents:Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
如果为 true
,将阻止 Flex 在鼠标未发生过移动的情况下调度 rollOut
和 rollOver
事件。使用 Zoom 效果在较大大小和较小大小之间切换效果目标时,将此属性设置为 true
。
例如,可使用 rollOverEffect
触发 Zoom 效果来缩小目标。目标收缩后,鼠标指针将不再位于目标上方,随之触发 rollOut
事件和相应的 rollOutEffect
。通过将 captureRollEvents
属性设置为 true
,可以防止 Flex 调度 rollOut
事件,除非因移动鼠标发生此事件。
默认值为 false。
originX | 属性 |
public var originX:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 x 位置的数字。缩放原点是目标上作为 Zoom 效果中心的位置。
此值必须介于 0 和目标组件的宽度之间。
默认值为target.width
/ 2,这是目标的中心。
originY | 属性 |
public var originY:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 y 位置的数字。缩放原点是目标上作为 Zoom 效果中心的位置。
此值必须介于 0 和目标组件的高度之间。
默认值为target.height
/ 2,此位置是目标的中心。
zoomHeightFrom | 属性 |
public var zoomHeightFrom:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行高度缩放时的缩放比例。默认值为 0.01,此时显示的高度非常小。
zoomHeightTo | 属性 |
public var zoomHeightTo:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个介于 0.01 和 1.0 之间的百分比数值,代表完成高度缩放时的缩放比例。默认值为 1.0,此时对象显示为正常高度。
zoomWidthFrom | 属性 |
public var zoomWidthFrom:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行宽度缩放时的缩放比例。默认值为 0.01,此时显示的宽度非常小。
zoomWidthTo | 属性 |
public var zoomWidthTo:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个介于 0.01 和 1.0 之间的百分比数值,代表完成宽度缩放时的缩放比例。默认值为 1.0,此时对象显示为正常宽度。
Zoom | () | 构造函数 |
<?xml version="1.0" encoding="utf-8"?> <!-- Simple example to demonstrate the Zoom effect. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import flash.events.MouseEvent; public function doZoom(event:MouseEvent):void { if (zoomAll.isPlaying) { zoomAll.reverse(); } else { // If this is a ROLL_OUT event, play the effect backwards. // If this is a ROLL_OVER event, play the effect forwards. zoomAll.play([event.target], event.type == MouseEvent.ROLL_OUT ? true : false); } } ]]> </fx:Script> <fx:Declarations> <mx:Zoom id="zoomAll" zoomWidthTo="1" zoomHeightTo="1" zoomWidthFrom=".5" zoomHeightFrom=".5" /> </fx:Declarations> <s:Panel title="Zoom Effect Example" width="95%" height="95%" > <s:VGroup left="20" right="20" top="20" bottom="20"> <s:Label width="100%" color="blue" text="Move the mouse over the image to enlarge it. Move the mouse off of the image to shrink it."/> <mx:Image id="img" source="@Embed(source='assets/Nokia_6630.png')" scaleX=".5" scaleY=".5" rollOver="doZoom(event)" rollOut="doZoom(event)"/> </s:VGroup> </s:Panel> </s:Application>
Tue Jun 12 2018, 11:04 AM Z