包 | mx.core |
类 | public class MovieClipAsset |
继承 | MovieClipAsset FlexMovieClip MovieClip Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
实现 | IFlexAsset, IFlexDisplayObject, IBorder |
子类 | MovieClipLoaderAsset |
要嵌入的 MovieClip 必须是 SWF 文件中的一个 movieclip 元件。使用嵌入的 movieclip 的常见原因是您已在 Flash 中创建了一个基于帧的动画,并且希望在 Flex 应用程序中使用它。MXML 编译器自动生成一个类,该类会扩展 MovieClipAsset 以呈现嵌入的动画。
编写 Flex 应用程序时,通常不必直接使用 MovieClipAsset 类。例如,通过编写以下代码,您可以将 movieclip 动画用作应用程序的背景图像:
<mx:Application backgroundImage="@Embed(source='Assets.swf', symbol='BackgroundAnimation')"/>
或者
<mx:Style> Application { backgroundImage: Embed(source="Assets.swf", symbol="BackgroundAnimation") } <mx:Style/>
不必了解 MXML 编译器已为您创建了 MovieClipAsset 的子类。
不过,了解在 ActionScript 级别发生的操作可能会有用。要在 ActionScript 中嵌入 movieclip,需要声明 Class 类型的变量,并对其应用 [Embed]
元数据。例如:
[Bindable] [Embed(source="Assets.swf", symbol="BackgroundAnimation")] private var backgroundAnimationClass:Class;
MXML 编译器会发现 Assets.swf 中的 BackgroundAnimation 元件是一个影片剪辑,自动生成 MovieClipAsset 类的子类以呈现该剪辑,并将变量设置为引用此自动生成的类。然后,您可以使用此类引用通过 new
运算符创建 MovieClipAsset 的实例,还可以对其使用 MovieClip 类的 API:
var backgroundAnimation:MovieClipAsset = MovieClipAsset(new backgroundAnimationClass()); var n:int = backgroundAnimation.totalFrames;
但是,您极少需要自己创建 MovieClipAsset 实例,因为 image-related 属性和样式可以设置为 image-producing 类,且组件会根据需要创建实例。例如,要将应用程序背景设置为此动画,只需编写以下内容:
<mx:Application backgroundImage="{backgroundAnimationClass}"/>
属性 | 定义方 | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties 此显示对象的当前辅助功能选项。 | DisplayObject | ||
alpha : Number 指示指定对象的 Alpha 透明度值。 | DisplayObject | ||
blendMode : String BlendMode 类中的一个值,用于指定要使用的混合模式。 | DisplayObject | ||
blendShader : Shader [只写] 设置用于混合前景和背景的着色器。 | DisplayObject | ||
borderMetrics : EdgeMetrics [只读 (read-only)] 为具有四个属性(left、top、right 和 bottom)的边框返回 EdgeMetrics 对象。 | MovieClipAsset | ||
buttonMode : Boolean 指定此 sprite 的按钮模式。 | Sprite | ||
cacheAsBitmap : Boolean 如果设置为 true,则 Flash Player 或 Adobe AIR 将缓存显示对象的内部位图表示形式。 | DisplayObject | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
contextMenu : NativeMenu 指定与此对象相关联的上下文菜单。 | InteractiveObject | ||
currentFrame : int [只读 (read-only)] 指定播放头在 MovieClip 实例的时间轴中所处的帧的编号。 | MovieClip | ||
currentFrameLabel : String [只读 (read-only)] MovieClip 实例的时间轴中当前帧上的标签。 | MovieClip | ||
currentLabel : String [只读 (read-only)] 在 MovieClip 实例的时间轴中播放头所在的当前标签。 | MovieClip | ||
currentLabels : Array [只读 (read-only)] 返回由当前场景的 FrameLabel 对象组成的数组。 | MovieClip | ||
currentScene : Scene [只读 (read-only)] 在 MovieClip 实例的时间轴中播放头所在的当前场景。 | MovieClip | ||
doubleClickEnabled : Boolean 指定此对象是否接收 doubleClick 事件。 | InteractiveObject | ||
dropTarget : DisplayObject [只读 (read-only)] 指定拖动 sprite 时经过的显示对象,或放置 sprite 的显示对象。 | Sprite | ||
enabled : Boolean 一个布尔值,指示影片剪辑是否处于活动状态。 | MovieClip | ||
filters : Array 包含当前与显示对象关联的每个滤镜对象的索引数组。 | DisplayObject | ||
focusRect : Object 指定此对象是否显示焦点矩形。 | InteractiveObject | ||
framesLoaded : int [只读 (read-only)] 从流式 SWF 文件加载的帧数。 | MovieClip | ||
graphics : Graphics [只读 (read-only)] 指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘画命令。 | Sprite | ||
height : Number 指示显示对象的高度,以像素为单位。 | DisplayObject | ||
hitArea : Sprite 指定一个 sprite 用作另一个 sprite 的点击区域。 | Sprite | ||
loaderInfo : LoaderInfo [只读 (read-only)] 返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。 | DisplayObject | ||
mask : DisplayObject 调用显示对象被指定的 mask 对象遮罩。 | DisplayObject | ||
measuredHeight : Number [只读 (read-only)] 此对象的测量高度。 | MovieClipAsset | ||
measuredWidth : Number [只读 (read-only)] 此对象的测量宽度。 | MovieClipAsset | ||
mouseChildren : Boolean 确定对象的子项是否支持鼠标。 | DisplayObjectContainer | ||
mouseEnabled : Boolean 指定此对象是否接收鼠标消息。 | InteractiveObject | ||
mouseX : Number [只读 (read-only)] 指示鼠标位置的 x 坐标,以像素为单位。 | DisplayObject | ||
mouseY : Number [只读 (read-only)] 指示鼠标位置的 y 坐标,以像素为单位。 | DisplayObject | ||
name : String 指示 DisplayObject 的实例名称。 | DisplayObject | ||
numChildren : int [只读 (read-only)] 返回此对象的子项数目。 | DisplayObjectContainer | ||
opaqueBackground : Object 指定显示对象是否由于具有某种背景颜色而不透明。 | DisplayObject | ||
parent : DisplayObjectContainer [只读 (read-only)] 指示包含此显示对象的 DisplayObjectContainer 对象。 | DisplayObject | ||
prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | ||
root : DisplayObject [只读 (read-only)] 对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。 | DisplayObject | ||
rotation : Number 指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。 | DisplayObject | ||
rotationX : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。 | DisplayObject | ||
rotationY : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。 | DisplayObject | ||
rotationZ : Number 指示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 z 轴旋转(以度为单位)。 | DisplayObject | ||
scale9Grid : Rectangle 当前有效的缩放网格。 | DisplayObject | ||
scaleX : Number 指示从注册点开始应用的对象的水平缩放比例(百分比)。 | DisplayObject | ||
scaleY : Number 指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。 | DisplayObject | ||
scaleZ : Number 指示从对象的注册点开始应用的对象的深度缩放比例(百分比)。 | DisplayObject | ||
scenes : Array [只读 (read-only)] 一个由 Scene 对象组成的数组,每个对象都列出了 MovieClip 实例中场景的名称、帧数和帧标签。 | MovieClip | ||
scrollRect : Rectangle 显示对象的滚动矩形范围。 | DisplayObject | ||
soundTransform : SoundTransform 控制此 sprite 中的声音。 | Sprite | ||
stage : Stage [只读 (read-only)] 显示对象的舞台。 | DisplayObject | ||
tabChildren : Boolean 确定对象的子项是否支持 Tab 键。 | DisplayObjectContainer | ||
tabEnabled : Boolean 指定此对象是否遵循 Tab 键顺序。 | InteractiveObject | ||
tabIndex : int 指定 SWF 文件中的对象按 Tab 键顺序排列。 | InteractiveObject | ||
textSnapshot : TextSnapshot [只读 (read-only)] 返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。 | DisplayObjectContainer | ||
totalFrames : int [只读 (read-only)] MovieClip 实例中帧的总数。 | MovieClip | ||
trackAsMenu : Boolean 指示属于 SimpleButton 或 MovieClip 对象的其它显示对象是否可以接收鼠标释放事件。 | MovieClip | ||
transform : Transform 一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。 | DisplayObject | ||
useHandCursor : Boolean 布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 sprite 时是否显示手指形(手形光标)。 | Sprite | ||
visible : Boolean 显示对象是否可见。 | DisplayObject | ||
width : Number 指示显示对象的宽度,以像素为单位。 | DisplayObject | ||
x : Number 指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。 | DisplayObject | ||
y : Number 指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。 | DisplayObject | ||
z : Number 指示 DisplayObject 实例相对于 3D 父容器沿 z 轴的 z 坐标位置。 | DisplayObject |
方法 | 定义方 | ||
---|---|---|---|
构造函数。 | MovieClipAsset | ||
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。 | DisplayObjectContainer | ||
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。 | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
指示安全限制是否会导致出现以下情况:在列表中忽略了使用指定 point 点调用 DisplayObjectContainer.getObjectsUnderPoint() 方法时返回的所有显示对象。 | DisplayObjectContainer | ||
确定指定显示对象是 DisplayObjectContainer 实例的子项还是该实例本身。 | DisplayObjectContainer | ||
将事件调度到事件流中。 | EventDispatcher | ||
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。 | DisplayObject | ||
返回位于指定索引处的子显示对象实例。 | DisplayObjectContainer | ||
返回具有指定名称的子显示对象。 | DisplayObjectContainer | ||
返回 DisplayObject 的 child 实例的索引位置。 | DisplayObjectContainer | ||
返回对象的数组,这些对象位于指定点下,并且是该 DisplayObjectContainer 实例的子项(或孙子项,依此类推)。 | DisplayObjectContainer | ||
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。 | DisplayObject | ||
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。 | DisplayObject | ||
将二维点从舞台(全局)坐标转换为三维显示对象的(本地)坐标。 | DisplayObject | ||
从指定帧开始播放 SWF 文件。 | MovieClip | ||
将播放头移到影片剪辑的指定帧并停在那里。 | MovieClip | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
指示对象是否已经定义了指定的属性。 | Object | ||
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。 | DisplayObject | ||
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。 | DisplayObject | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
将三维显示对象的(本地)坐标的三维点转换为舞台(全局)坐标中的二维点。 | DisplayObject | ||
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。 | DisplayObject | ||
将此对象移动到指定的 x 和 y 坐标。 | MovieClipAsset | ||
将播放头转到下一帧并停止。 | MovieClip | ||
将播放头移动到 MovieClip 实例的下一场景。 | MovieClip | ||
在影片剪辑的时间轴中移动播放头。 | MovieClip | ||
将播放头转到前一帧并停止。 | MovieClip | ||
将播放头移动到 MovieClip 实例的前一场景。 | MovieClip | ||
指示指定的属性是否存在、是否可枚举。 | Object | ||
从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。 | DisplayObjectContainer | ||
从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。 | DisplayObjectContainer | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置此对象的实际大小。 | MovieClipAsset | ||
更改现有子项在显示对象容器中的位置。 | DisplayObjectContainer | ||
设置循环操作动态属性的可用性。 | Object | ||
允许用户拖动指定的 Sprite。 | Sprite | ||
停止影片剪辑中的播放头。 | MovieClip | ||
结束 startDrag() 方法。 | Sprite | ||
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。 | DisplayObjectContainer | ||
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。 | DisplayObjectContainer | ||
返回一个字符串,用于指示此对象在应用程序的 DisplayObject 层次结构中所处的位置。 | FlexMovieClip | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher |
borderMetrics | 属性 |
borderMetrics:EdgeMetrics
[只读 (read-only)]
为具有四个属性(left
、top
、right
和 bottom
)的边框返回 EdgeMetrics 对象。每个属性值等于边框其中一条边的粗细(以像素为单位)。
public function get borderMetrics():EdgeMetrics
measuredHeight | 属性 |
measuredHeight:Number
[只读 (read-only)] 此对象的测量高度。
通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure()
方法,从而能够计算 measuredHeight
。
public function get measuredHeight():Number
measuredWidth | 属性 |
measuredWidth:Number
[只读 (read-only)] 此对象的测量宽度。
通常为图形外观硬编码此属性,因为此数字只是图形中的像素数目。对于代码外观来说,如果希望以特定大小进行绘制,也可以对其进行硬编码。如果此大小可以随属性更改,您可能还希望是 ILayoutManagerClient,以便在适当时调用 measure()
方法,从而能够计算 measuredHeight
。
public function get measuredWidth():Number
MovieClipAsset | () | 构造函数 |
public function MovieClipAsset()
构造函数。
move | () | 方法 |
public function move(x:Number, y:Number):void
将此对象移动到指定的 x 和 y 坐标。
参数
x:Number — 此对象的新 x 位置。 | |
y:Number — 此对象的新 y 位置。 |
setActualSize | () | 方法 |
public function setActualSize(newWidth:Number, newHeight:Number):void
设置此对象的实际大小。
此方法主要用于实现 updateDisplayList()
方法。在此期间,您可以根据其显式大小、相对于父项的(百分比)大小以及度量大小计算此对象的实际大小。然后,通过调用 setActualSize()
将此实际大小应用于对象。
在其它情况下,您应该设置 width
、height
、percentWidth
或 percentHeight
属性,而非调用此方法。
参数
newWidth:Number — 此对象的新宽度。 | |
newHeight:Number — 此对象的新高度。 |