包 | mx.effects |
类 | public class Effect |
继承 | Effect EventDispatcher Object |
实现 | IEffect |
子类 | AddAction, AddChildAction, AddItemAction, Animate, CallAction, CompositeEffect, MaskEffect, RemoveAction, RemoveChildAction, RemoveItemAction, SetAction, SetPropertyAction, SetStyleAction, SoundEffect, TweenEffect, UnconstrainItemAction |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在应用程序中不创建 Effect 类本身的实例,而是创建一个子类的实例,如 Fade 或 WipeLeft。
MXML 语法隐藏 MXML 语法The Effect class defines the following properties, which all of its subclasses inherit:
<mx:tagname Properties customFilter="" duration="500" filter="" hideFocusRing="false" perElementOffset="0" repeatCount="1" repeatDelay="0" startDelay="0" suspendBackgroundProcessing="false|true" target="effect target" targets="array of effect targets" Events effectEnd="No default" efectStart="No default" />
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
className : String [只读]
效果类的名称,如“Fade”。 | Effect | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
customFilter : mx.effects:EffectTargetFilter
指定一个 EffectTargetFilter 类型的自定义滤镜对象,效果将使用此对象来确定播放效果的目标。 | Effect | ||
duration : Number
效果的持续时间(以毫秒为单位)。 | Effect | ||
effectTargetHost : mx.effects:IEffectTargetHost
一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。 | Effect | ||
filter : String
指定用于过滤效果目标的算法。 | Effect | ||
hideFocusRing : Boolean
确定在开始播放效果时,效果是否应隐藏对焦环。 | Effect | ||
instanceClass : Class
一个 Class 类型的对象,用于指定此效果类的效果实例类。 | Effect | ||
isPlaying : Boolean [只读]
一个只读标志,如果当前正在播放效果的任一实例,则为 true;否则,则为 false。 | Effect | ||
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 |
属性 | 由以下参数定义 | ||
---|---|---|---|
applyTransitionEndProperties : Boolean
此标志控制该效果(进行转换时)是否将根据结束状态自动应用属性值,这与将值保留为效果本身所设置的值相反。 | Effect | ||
endValuesCaptured : Boolean = false
一个标志,如果已确定效果的结束值,则该标志中包含 true;如果需要在效果运行时从效果目标的当前属性捕获这些值,则其中包含 false。 | Effect |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | Effect | ||
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 |
方法 | 由以下参数定义 | ||
---|---|---|---|
供 Effect 基础结构内部使用。 | Effect | ||
当效果实例完成播放时调用。 | Effect | ||
当效果实例开始播放时调用此方法。 | Effect | ||
当效果实例已被 stop() 方法调用停止时调用。 | Effect | ||
确定筛选效果实例所用的逻辑。 | Effect | ||
由 captureStartValues() 方法调用,用来从目标获得某个属性的值。 | Effect | ||
将效果的属性复制到效果实例。 | Effect |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
在其中一个效果实例完成播放时(既可以是实例实际完成播放时,也可以是通过调用 end() 方法中断效果时)调度。 | Effect | |||
当效果开始播放时调度。 | Effect | |||
在已停止效果时调度,仅当该效果已被 stop() 方法调用中断时才会发生。 | Effect |
applyTransitionEndProperties | 属性 |
protected var applyTransitionEndProperties:Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
此标志控制该效果(进行转换时)是否将根据结束状态自动应用属性值,这与将值保留为效果本身所设置的值相反。
默认值为 true。
className | 属性 |
customFilter | 属性 |
customFilter:mx.effects:EffectTargetFilter
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
指定一个 EffectTargetFilter 类型的自定义滤镜对象,效果将使用此对象来确定播放效果的目标。
只有在播放效果之前调用 captureStartValues()
方法时,才执行目标过滤。Flex 会在转移效果过程中自动调用 captureStartValues()
方法。
使用 filter
属性可实现简单过滤。如果 customFilter
属性值非空,则会忽略 filter
属性。
实现
public function get customFilter():mx.effects:EffectTargetFilter
public function set customFilter(value:mx.effects:EffectTargetFilter):void
duration | 属性 |
duration:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
效果的持续时间(以毫秒为单位)。
在 Parallel 或 Sequence 效果中,可通过 duration
属性设置每种效果的持续时间。例如,如果 Sequence 效果的 duration
属性设置为 3000,则 Sequence 中的每个效果都会播放 3000 毫秒。
对于重复播放的效果来说,duration
属性将指定效果各个实例的持续时间。因此,如果某个效果的 duration
属性设置为 2000,并且 repeatCount
属性设置为 3,则播放此效果共需要 6000 毫秒(6 秒)。
实现
public function get duration():Number
public function set duration(value:Number):void
effectTargetHost | 属性 |
effectTargetHost:mx.effects:IEffectTargetHost
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。通过设置此属性,效果类的实例将能够访问播放此效果的基于列表的控件。
实现
public function get effectTargetHost():mx.effects:IEffectTargetHost
public function set effectTargetHost(value:mx.effects:IEffectTargetHost):void
endValuesCaptured | 属性 |
protected var endValuesCaptured:Boolean = false
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个标志,如果已确定效果的结束值,则标志中包含 true
;如果需要在效果运行时从效果目标的当前属性捕获这些值,则其中包含 false
。此属性对数据效果而言是必需的,因为设置数据效果(如 DefaultListEffect 和 DefaultTileListEffect)的顺序比设置普通效果的顺序要复杂。
默认值为 false。
filter | 属性 |
filter:String
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
指定用于过滤效果目标的算法。如果此值为 null
,将指定不进行任何过滤。
只有在播放效果之前调用 captureStartValues()
方法时,才执行目标过滤。当转移过程或基于列表的控件的数据效果中需使用该效果时,Flex 会自动调用 captureStartValues()
方法。
使用此属性可实现简单过滤。使用 customFilter
属性可实现更为复杂的过滤。如果 customFilter
属性值非空,则会忽略此属性。
filter
属性可使用以下值:
- 如果将此值设置为
"add"
,则可以在作为子项添加到容器的任何目标上播放效果。 - 如果将此值设置为
"addItem"
,则可以在添加到 List 或 TileList 控件的任何列表项的项呈示器上播放效果。 - 如果将此值设置为
"hide"
,则可以在已将 visible 属性从true
更改为false
的任何目标上播放效果。 - 如果将此值设置为
"move"
,则可以在更改了x
或y
属性的任何目标上播放效果。 - 如果将此值设置为
"remove"
,则可以在已作为容器子项删除的任何目标上播放效果。 - 如果将此值设置为
"removeItem"
,则可以在从 List 或 TileList 控件中删除的任何列表项的项呈示器上播放效果。 - 如果将此值设置为
"replacedItem"
,则可以在 List 或 TileList 控件中被替换为新项目的任何列表项的项呈示器上播放效果。 - 如果将此值设置为
"replacementItem"
,则可以在添加到 List 或 TileList 控件中用以替换现有项目的任何列表项的项呈示器上播放效果。 - 如果将此值设置为
"resize"
,则可以在更改了width
或height
属性的任何目标上播放效果。 - 如果将此值设置为
"show"
,则可以在已将 visible 属性从false
更改为true
的任何目标上播放效果。 - 如果将此值设置为
""
,则指定不进行任何过滤。
实现
public function get filter():String
public function set filter(value:String):void
hideFocusRing | 属性 |
hideFocusRing:Boolean
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
确定在开始播放效果时,效果是否应隐藏对焦环。效果目标负责隐藏对焦环。UIComponent 类的子类将自动隐藏对焦环。如果效果目标不是 UIComponent 类的子类,则必须向其添加隐藏对焦环的功能。
将此属性设置为 true
可在播放效果期间隐藏对焦环。
对于 Effect 的子类,默认值是 false
。对于 MaskEffect 的子类,默认值是 true
。
实现
public function get hideFocusRing():Boolean
public function set hideFocusRing(value:Boolean):void
instanceClass | 属性 |
public var instanceClass:Class
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
一个 Class 类型的对象,用于指定此效果类的效果实例类。
Effect 类的所有子类都必须在其构造函数中设置此属性。
isPlaying | 属性 |
perElementOffset | 属性 |
playheadTime | 属性 |
relevantProperties | 属性 |
relevantStyles | 属性 |
repeatCount | 属性 |
public var repeatCount:int = 1
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
效果的重复次数。可能的值为任何大于等于 0 的整数。值为 1 表示播放一次效果。值为 0 表示无限制地循环播放效果,直到通过调用 end()
方法停止播放。
默认值为 1。
repeatDelay | 属性 |
public var repeatDelay:int = 0
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
重复播放效果前需要等待的时间(以毫秒为单位)。可能的值为任何大于等于 0 的整数。
默认值为 0。
startDelay | 属性 |
public var startDelay:int = 0
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
开始播放效果前需要等待的时间(以毫秒为单位)。此值可以是任何大于或等于 0 的整数。如果使用 repeatCount
属性重复播放效果,则只在首次播放效果时应用 startDelay
。
默认值为 0。
suspendBackgroundProcessing | 属性 |
public var suspendBackgroundProcessing:Boolean = false
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
如果为 true
,则在播放效果时阻止所有背景处理。背景处理包括度量、布局和处理来自服务器的响应。默认值为 false
。
大多数情况下,建议将此属性设置为 true
,因为这可以提高应用程序的性能。但是,如果符合下列条件之一,则应将此属性设置为 false
:
- 播放效果时可能会出现用户输入内容,并且应用程序必须在效果完成播放前响应用户输入。
- 播放效果时可能会收到来自服务器的响应,并且应用程序必须一面播放效果,一面处理此响应。
默认值为 false。
target | 属性 |
targets | 属性 |
triggerEvent | 属性 |
Effect | () | 构造函数 |
applyValueToTarget | () | 方法 |
protected function applyValueToTarget(target:Object, property:String, value:*, props:Object):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
供 Effect 基础结构内部使用。如果已调用 captureStartValues()
,则当 Flex 调用 play()
方法时,将使用此函数将目标设置回初始状态。默认行为是使用 getValueFromTarget()
方法获取捕获的值,并直接在目标的属性上进行设置。例如:
target[property] = value;
仅当需要以其他方式应用捕获的值时,才覆盖此方法。请注意,目标的样式属性将使用其他机制进行设置。使用 relevantStyles
属性指定要捕获并应用的样式属性。
参数
target:Object — 效果目标。
| |
property:String — 目标属性。
| |
value:* — 属性的值。
| |
props:Object — 一个对象数组,其中每个 Array 元素中都包含效果正在监视的属性的 start 和 end Object。
|
captureEndValues | () | 方法 |
public function captureEndValues():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
捕获效果目标上相关属性的当前值,并将这些值另存为结束值。
如果此效果是数据更改效果的一部分,Flex 会自动调用 captureEndValues()
方法。
captureMoreStartValues | () | 方法 |
captureStartValues | () | 方法 |
public function captureStartValues():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
捕获效果目标上相关属性的当前值。Flex 会在转移效果过程中自动调用 captureStartValues()
方法。
如果希望效果指出此效果的起始值和结束值,请使用此函数。下面是使用此函数的正确步骤:
- 调用
captureStartValues()
方法。效果捕获效果起始值。 - 更改效果目标,如添加/删除子项、更改属性、更改位置或更改尺寸。
- 调用
play()
方法。此效果将捕获结束值。此函数会为此效果创建的每个效果实例填充EffectInstance.propertyChanges
属性。效果开发人员可以使用propertyChanges
属性检索其效果的起始值和结束值。
createInstance | () | 方法 |
public function createInstance(target:Object = null):IEffectInstance
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
创建一个效果实例并对其进行初始化。在播放效果实例前,使用此方法(而非 play()
方法)处理效果实例属性。
所创建的效果实例的类型由 instanceClass
属性指定。然后,使用 initInstance()
方法初始化此实例。如果该实例是 EffectManager 在效果触发器触发此效果时创建的,则还需要调用 EffectInstance.initEffect()
方法进一步初始化此效果。
调用 createInstance()
方法不会播放效果。对返回的效果实例调用 startEffect()
方法。
Effect.play()
方法将自动调用此函数。
参数
target:Object (default = null ) — 要使用此效果为其设置动画的对象。
|
IEffectInstance — 效果的效果实例对象。
|
createInstances | () | 方法 |
deleteInstance | () | 方法 |
public function deleteInstance(instance:IEffectInstance):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
删除实例中的事件侦听器,然后从实例列表中删除该实例。
参数
instance:IEffectInstance — 效果实例。
|
effectEndHandler | () | 方法 |
protected function effectEndHandler(event:EffectEvent):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
当效果实例完成播放时调用。如果覆盖此方法,请确保调用超级方法。
参数
event:EffectEvent — EffectEvent 类型的事件对象。
|
effectStartHandler | () | 方法 |
protected function effectStartHandler(event:EffectEvent):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
当效果实例开始播放时调用此方法。如果覆盖此方法,请确保调用超级方法。
参数
event:EffectEvent — EffectEvent 类型的事件对象。
|
effectStopHandler | () | 方法 |
protected function effectStopHandler(event:EffectEvent):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
当效果实例已被 stop()
方法调用停止时调用。如果覆盖此方法,请确保调用超级方法。
参数
event:EffectEvent — EffectEvent 类型的事件对象。
|
end | () | 方法 |
public function end(effectInstance:IEffectInstance = null):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
中断当前正在播放的效果,立即跳转到该效果的末尾。调用此方法将调用 EffectInstance.end()
方法。
如果调用此方法来结束播放效果,效果实例将调度 effectEnd
事件。
如果将效果实例作为参数传递,则会中断此实例。如果没有传入参数,则该效果当前生成的所有效果实例都将中断。
参数
effectInstance:IEffectInstance (default = null ) — 要终止的 EffectInstance。
|
filterInstance | () | 方法 |
getAffectedProperties | () | 方法 |
getValueFromTarget | () | 方法 |
protected function getValueFromTarget(target:Object, property:String):*
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
由 captureStartValues()
方法调用,用来从目标获得某个属性的值。此函数应仅供效果框架内部调用。默认行为是只返回 target[property]
。如果您需要其他行为,效果开发人员可以覆盖此函数。
参数
target:Object — 效果目标。
| |
property:String — 目标属性。
|
* — 目标属性的值。
|
initInstance | () | 方法 |
protected function initInstance(instance:IEffectInstance):void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
将效果的属性复制到效果实例。
Flex 将从 Effect.createInstance()
方法调用此方法;您不必亲自调用它。
创建自定义效果时覆盖此方法,将属性从 Effect 类复制到效果实例类。进行覆盖时,请调用 super.initInstance()
。
参数
instance:IEffectInstance — 要初始化的效果实例。
|
pause | () | 方法 |
public function pause():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
暂停效果,直到调用 resume()
方法。
play | () | 方法 |
public function play(targets:Array = null, playReversedFromEnd:Boolean = false):Array
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
开始播放效果。通常在调用 play()
方法之前先调用 end()
方法,以确保在开始播放新效果前已结束先前效果的所有实例。
所有子类都必须实现此方法。
参数
targets:Array (default = null ) — 播放此效果的目标对象的数组。如果已指定此参数,则不会使用效果的 targets 属性。
| |
playReversedFromEnd:Boolean (default = false ) — 如果为 true ,则向后播放效果。
|
Array — 效果的 EffectInstance 对象的数组,一个目标一个数组。
|
resume | () | 方法 |
public function resume():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在效果由 pause()
方法暂停后继续播放效果。
reverse | () | 方法 |
public function reverse():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
逆序播放效果;如果当前正在播放效果,则从该效果的当前位置开始逆序播放。
stop | () | 方法 |
public function stop():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
停止播放效果,使效果目标保持当前状态。与调用 pause()
方法不同,无法先调用 stop()
方法再调用 resume()
方法。不过,您可以调用 play()
方法重新播放效果。
如果调用此方法来结束播放效果,效果实例将调度 effectEnd
事件。
对于遮罩效果,停止播放效果后不会自动删除遮罩。如果事先没有删除遮罩就继续对同一目标运行遮罩效果,可能会出现意外结果。
effectEnd | 事件 |
mx.events.EffectEvent
属性 EffectEvent.type =
mx.events.EffectEvent.EFFECT_END
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在其中一个效果实例完成播放时(既可以是实例实际完成播放时,也可以是通过调用 end()
方法中断效果时)调度。
EffectEvent.EFFECT_END
常量可为 effectEnd
事件定义事件对象的 type
属性值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
effectInstance | 事件的效果实例对象。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
effectStart | 事件 |
mx.events.EffectEvent
属性 EffectEvent.type =
mx.events.EffectEvent.EFFECT_START
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
当效果开始播放时调度。
EffectEvent.EFFECT_START
常量可为 effectStart
事件定义事件对象的 type
属性值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
effectInstance | 事件的效果实例对象。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
effectStop | 事件 |
mx.events.EffectEvent
属性 EffectEvent.type =
mx.events.EffectEvent.EFFECT_STOP
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在已停止效果时调度,仅当该效果已被 stop()
方法调用中断时才会发生。还将调度 EFFECT_END 事件以指示已结束该效果。将首先发送此额外事件,作为对效果未达到其结束状态的侦听器的指示。
EffectEvent.EFFECT_STOP
常量可为 effectStop
事件定义事件对象的 type
属性值。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
effectInstance | 事件的效果实例对象。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
<?xml version="1.0"?> <!-- Simple example to demonstrate the Effect class. --> <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 mx.controls.Alert; // Event handler for the effectEnd event. private function endEffectHandler():void { Alert.show("Effect Ended!"); } // Event handler for the reset button. private function resetHandler():void { expand.end(); img.width=30; img.height=60; button1.enabled=true; } ]]> </fx:Script> <fx:Declarations> <mx:Resize id="expand" target="{img}" widthTo="100" heightTo="200" duration="10000" effectEnd="endEffectHandler();"/> </fx:Declarations> <s:Panel title="Resize Effect Example" width="100%" height="100%" > <s:VGroup left="20" right="20" top="20" bottom="20"> <s:Label width="100%" color="blue" text="Use the Button controls to control the Resize effect."/> <mx:Image id="img" width="30" height="60" source="@Embed(source='assets/Nokia_6630.png')"/> <s:Button id="button1" label="Start" click="expand.play(); button1.enabled=false;"/> <s:Button label="Pause" click="expand.pause();"/> <s:Button label="Resume" click="expand.resume();"/> <s:Button label="Reverse" click="expand.reverse();"/> <s:Button label="End" click="expand.end();"/> <s:Button label="Reset" click="resetHandler();"/> </s:VGroup> </s:Panel> </s:Application>
Tue Jun 12 2018, 11:04 AM Z