添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
ActionScript 3.0 Language and Components Reference All Packages | All Classes | Language Elements | Index | Appendixes | Conventions | Frames No Frames  Adobe Logo MovieClip Properties | Methods | Events | Examples InheritanceMovieClip Inheritance Sprite Inheritance DisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object Subclasses FlexMovieClip , SystemManager , UIMovieClip , WindowedSystemManager The MovieClip class inherits from the following classes: Sprite, DisplayObjectContainer, InteractiveObject, DisplayObject, and EventDispatcher.

Unlike the Sprite object, a MovieClip object has a timeline.

Children instances placed on the Stage in the Flash authoring tool cannot be accessed by code from within the constructor of a parent instance since they have not been created at that point in code execution. Before accessing the child, the parent must instead either create the child instance by code or delay access to a callback function that listens for the child to dispatch its Event.ADDED_TO_STAGE event.

If you modify any of the following properties of a MovieClip object that contains a motion tween, the playhead is stopped in that MovieClip object: alpha , blendMode , filters , height , opaqueBackground , rotation , scaleX , scaleY , scale9Grid , scrollRect , transform , visible , width , x , or y . However, it does not stop the playhead in any child MovieClip objects of that MovieClip object.

View the examples Inherited accessibilityProperties : AccessibilityProperties The current accessibility options for this display object. DisplayObject Inherited alpha : Number Indicates the alpha transparency value of the object specified. DisplayObject Inherited blendMode : String A value from the BlendMode class that specifies which blend mode to use. DisplayObject Inherited buttonMode : Boolean Specifies the button mode of this sprite. Sprite Inherited cacheAsBitmap : Boolean If set to true, Flash Player or Adobe AIR caches an internal bitmap representation of the display object. DisplayObject Inherited constructor : Object A reference to the class object or constructor function for a given object instance. Object Inherited contextMenu : NativeMenu Specifies the context menu associated with this object. InteractiveObject currentFrame : int
[read-only] Specifies the number of the frame in which the playhead is located in the timeline of the MovieClip instance.
MovieClip currentLabel : String
[read-only] The current label in which the playhead is located in the timeline of the MovieClip instance.
MovieClip currentLabels : Array
[read-only] Returns an array of FrameLabel objects from the current scene.
MovieClip currentScene : Scene
[read-only] The current scene in which the playhead is located in the timeline of the MovieClip instance.
MovieClip Inherited doubleClickEnabled : Boolean Specifies whether the object receives doubleClick events. InteractiveObject Inherited dropTarget : DisplayObject
[read-only] Specifies the display object over which the sprite is being dragged, or on which the sprite was dropped.
Sprite enabled : Boolean A Boolean value that indicates whether a movie clip is enabled. MovieClip Inherited filters : Array An indexed array that contains each filter object currently associated with the display object. DisplayObject Inherited focusRect : Object Specifies whether this object displays a focus rectangle. InteractiveObject framesLoaded : int
[read-only] The number of frames that are loaded from a streaming SWF file.
MovieClip Inherited graphics : Graphics
[read-only] Specifies the Graphics object that belongs to this sprite where vector drawing commands can occur.
Sprite Inherited height : Number Indicates the height of the display object, in pixels. DisplayObject Inherited hitArea : Sprite Designates another sprite to serve as the hit area for a sprite. Sprite Inherited loaderInfo : LoaderInfo
[read-only] Returns a LoaderInfo object containing information about loading the file to which this display object belongs.
DisplayObject Inherited mask : DisplayObject The calling display object is masked by the specified mask object. DisplayObject Inherited mouseChildren : Boolean Determines whether or not the children of the object are mouse enabled. DisplayObjectContainer Inherited mouseEnabled : Boolean Specifies whether this object receives mouse messages. InteractiveObject Inherited mouseX : Number
[read-only] Indicates the x coordinate of the mouse position, in pixels.
DisplayObject Inherited mouseY : Number
[read-only] Indicates the y coordinate of the mouse position, in pixels.
DisplayObject Inherited name : String Indicates the instance name of the DisplayObject. DisplayObject Inherited numChildren : int
[read-only] Returns the number of children of this object.
DisplayObjectContainer Inherited opaqueBackground : Object Specifies whether the display object is opaque with a certain background color. DisplayObject Inherited parent : DisplayObjectContainer
[read-only] Indicates the DisplayObjectContainer object that contains this display object.
DisplayObject Inherited prototype : Object
[static] A reference to the prototype object of a class or function object.
Object Inherited root : DisplayObject
[read-only] For a display object in a loaded SWF file, the root property is the top-most display object in the portion of the display list's tree structure represented by that SWF file.
DisplayObject Inherited rotation : Number Indicates the rotation of the DisplayObject instance, in degrees, from its original orientation. DisplayObject Inherited scale9Grid : Rectangle The current scaling grid that is in effect. DisplayObject Inherited scaleX : Number Indicates the horizontal scale (percentage) of the object as applied from the registration point. DisplayObject Inherited scaleY : Number Indicates the vertical scale (percentage) of an object as applied from the registration point of the object. DisplayObject scenes : Array
[read-only] An array of Scene objects, each listing the name, the number of frames, and the frame labels for a scene in the MovieClip instance.
MovieClip Inherited scrollRect : Rectangle The scroll rectangle bounds of the display object. DisplayObject Inherited soundTransform : SoundTransform Controls sound within this sprite. Sprite Inherited stage : Stage
[read-only] The Stage of the display object.
DisplayObject Inherited tabChildren : Boolean Determines whether the children of the object are tab enabled. DisplayObjectContainer Inherited tabEnabled : Boolean Specifies whether this object is in the tab order. InteractiveObject Inherited tabIndex : int Specifies the tab ordering of objects in a SWF file. InteractiveObject Inherited textSnapshot : TextSnapshot
[read-only] Returns a TextSnapshot object for this DisplayObjectContainer instance.
DisplayObjectContainer totalFrames : int
[read-only] The total number of frames in the MovieClip instance.
MovieClip trackAsMenu : Boolean Indicates whether other display objects that are SimpleButton or MovieClip objects can receive mouse release events. MovieClip Inherited transform : Transform An object with properties pertaining to a display object's matrix, color transform, and pixel bounds. DisplayObject Inherited useHandCursor : Boolean A Boolean value that indicates whether the pointing hand (hand cursor) appears when the mouse rolls over a sprite in which the buttonMode property is set to true. Sprite Inherited visible : Boolean Whether or not the display object is visible. DisplayObject Inherited width : Number Indicates the width of the display object, in pixels. DisplayObject Inherited x : Number Indicates the x coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer. DisplayObject Inherited y : Number Indicates the y coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer. DisplayObject addEventListener (type: String , listener: Function , useCapture: Boolean = false, priority: int = 0, useWeakReference: Boolean = false): void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. EventDispatcher Indicates whether the security restrictions would cause any display objects to be omitted from the list returned by calling the DisplayObjectContainer.getObjectsUnderPoint() method with the specified point point. DisplayObjectContainer Determines whether the specified display object is a child of the DisplayObjectContainer instance or the instance itself. DisplayObjectContainer Returns a rectangle that defines the area of the display object relative to the coordinate system of the targetCoordinateSpace object. DisplayObject Returns an array of objects that lie under the specified point and are children (or grandchildren, and so on) of this DisplayObjectContainer instance. DisplayObjectContainer Returns a rectangle that defines the boundary of the display object, based on the coordinate system defined by the targetCoordinateSpace parameter, excluding any strokes on shapes. DisplayObject Converts the point object from the Stage (global) coordinates to the display object's (local) coordinates. DisplayObject Checks whether the EventDispatcher object has any listeners registered for a specific type of event. EventDispatcher Evaluates the display object to see if it overlaps or intersects with the obj display object. DisplayObject Evaluates the display object to see if it overlaps or intersects with the point specified by the x and y parameters. DisplayObject Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. Object Converts the point object from the display object's (local) coordinates to the Stage (global) coordinates. DisplayObject Removes the specified child DisplayObject instance from the child list of the DisplayObjectContainer instance. DisplayObjectContainer Removes a child DisplayObject from the specified index position in the child list of the DisplayObjectContainer. DisplayObjectContainer removeEventListener (type: String , listener: Function , useCapture: Boolean = false): void Removes a listener from the EventDispatcher object. EventDispatcher Swaps the z-order (front-to-back order) of the child objects at the two specified index positions in the child list. DisplayObjectContainer Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. EventDispatcher currentFrame: int [read-only]

Specifies the number of the frame in which the playhead is located in the timeline of the MovieClip instance. If the movie clip has multiple scenes, this value is the frame number in the current scene. Implementation public function get currentFrame(): int Example

The following code uses the gotoAndStop() method and the currentFrame property to direct the playhead of the mc1 movie clip to advance five frames ahead of its current location and stop: mc1.gotoAndStop(mc1.currentFrame + 5);
currentLabel: String [read-only]

The current label in which the playhead is located in the timeline of the MovieClip instance. If the current frame has no label, currentLabel is set to the name of the previous frame that includes a label. If the current frame and previous frames do not include a label, currentLabel returns null . Implementation public function get currentLabel(): String Example

The following code illustrates how to access the currentLabel property of a MovieClip object named mc1 : trace(mc1.currentLabel);
currentLabels: Array [read-only]

Returns an array of FrameLabel objects from the current scene. If the MovieClip instance does not use scenes, the array includes all frame labels from the entire MovieClip instance. Implementation public function get currentLabels(): Array See also flash.display.FrameLabel Example

The following code illustrates how to use the currentLabels property of a MovieClip object named mc1 : import flash.display.FrameLabel; var labels:Array = mc1.currentLabels; for (var i:uint = 0; i < labels.length; i++) { var label:FrameLabel = labels[i]; trace("frame " + label.frame + ": " + label.name); currentScene: Scene [read-only]

The current scene in which the playhead is located in the timeline of the MovieClip instance. Implementation public function get currentScene(): Scene See also Scene Example

The following code illustrates how to use the currentScene property of a MovieClip object named mc1 : import flash.display.Scene; var scene:Scene = mc1.currentScene; trace(scene.name + ": " + scene.numFrames + " frames");
enabled: Boolean [read-write]

A Boolean value that indicates whether a movie clip is enabled. The default value of enabled is true . If enabled is set to false , the movie clip's Over, Down, and Up frames are disabled. The movie clip continues to receive events (for example, mouseDown , mouseUp , keyDown , and keyUp ).

The enabled property governs only the button-like properties of a movie clip. You can change the enabled property at any time; the modified movie clip is immediately enabled or disabled. If enabled is set to false , the object is not included in automatic tab ordering.

Implementation public function get enabled(): Boolean public function set enabled(value: Boolean ): void Example
The following code illustrates how to use the enabled property to disable the button-like properties of a MovieClip object named mc1 : mc1.enabled = false;
framesLoaded: int [read-only]

The number of frames that are loaded from a streaming SWF file. You can use the framesLoaded property to determine whether the contents of a specific frame and all the frames before it loaded and are available locally in the browser. You can also use it to monitor the downloading of large SWF files. For example, you might want to display a message to users indicating that the SWF file is loading until a specified frame in the SWF file finishes loading.

If the movie clip contains multiple scenes, the framesLoaded property returns the number of frames loaded for all scenes in the movie clip.

Implementation public function get framesLoaded(): int See also Loader class Example
The following code illustrates how to use the framesLoaded property and the totalFrames property to determine if a streaming MovieClip object named mc1 is fully loaded: if (mc1.framesLoaded == mc1.totalFrames) { trace("OK."); scenes: Array [read-only]

An array of Scene objects, each listing the name, the number of frames, and the frame labels for a scene in the MovieClip instance. Implementation public function get scenes(): Array See also Scene Example

The following code illustrates how to use the scenes property of a MovieClip object named mc1 : import flash.display.Scene; for (var i:uint = 0; i < mc1.scenes.length; i++) { var scene:Scene = mc1.scenes[i]; trace("scene " + scene.name + ": " + scene.numFrames + " frames"); totalFrames: int [read-only]

The total number of frames in the MovieClip instance.

If the movie clip contains multiple frames, the totalFrames property returns the total number of frames in all scenes in the movie clip.

Implementation public function get totalFrames(): int Example
The following code illustrates the use of the totalFrames property of a MovieClip object named mc1 : trace(mc1.totalFrames);
trackAsMenu: Boolean [read-write]

Indicates whether other display objects that are SimpleButton or MovieClip objects can receive mouse release events. The trackAsMenu property lets you create menus. You can set the trackAsMenu property on any SimpleButton or MovieClip object. The default value of the trackAsMenu property is false .

You can change the trackAsMenu property at any time; the modified movie clip immediately uses the new behavior.

Implementation public function get trackAsMenu(): Boolean public function set trackAsMenu(value: Boolean ): void Example
The following code illustrates how to use the trackAsMenu property to enable mouse release events for a MovieClip object named mc1 : mc1.trackAsMenu = true;
Constructor Detail
MovieClip()Constructor public function MovieClip() Creates a new MovieClip instance. After creating the MovieClip, call the addChild() or addChildAt() method of a display object container that is onstage.
Method Detail
gotoAndPlay()method public function gotoAndPlay(frame: Object , scene: String = null): void Starts playing the SWF file at the specified frame. This happens after all remaining actions in the frame have finished executing. To specify a scene as well as a frame, specify a value for the scene parameter. Parameters frame : Object — A number representing the frame number, or a string representing the label of the frame, to which the playhead is sent. If you specify a number, it is relative to the scene you specify. If you do not specify a scene, the current scene determines the global frame number to play. If you do specify a scene, the playhead jumps to the frame number in the specified scene.
The following code uses the gotoAndPlay() method to direct the playhead of the mc1 movie clip to advance five frames ahead of its current location: mc1.gotoAndPlay(mc1.currentFrame + 5);
The following code uses the gotoAndPlay() method to direct the playhead of the mc1 movie clip to the frame labeled "intro" in the scene named "Scene 12" : mc1.gotoAndPlay("intro", "Scene 12");
public function gotoAndStop(frame: Object , scene: String = null): void Brings the playhead to the specified frame of the movie clip and stops it there. This happens after all remaining actions in the frame have finished executing. If you want to specify a scene in addition to a frame, specify a scene parameter. Parameters frame : Object — A number representing the frame number, or a string representing the label of the frame, to which the playhead is sent. If you specify a number, it is relative to the scene you specify. If you do not specify a scene, the current scene determines the global frame number at which to go to and stop. If you do specify a scene, the playhead goes to the frame number in the specified scene and stops.
The following code uses the gotoAndStop() method and the currentFrame property to direct the playhead of the mc1 movie clip to advance five frames ahead of its current location and stop: mc1.gotoAndStop(mc1.currentFrame + 5);
The following code uses the gotoAndStop() to direct the playhead of the mc1 movie clip to the frame labeled "finale" in the scene named "Scene 12" and stop the playhead: mc1.gotoAndStop("finale", "Scene 12");
public function nextFrame(): void Sends the playhead to the next frame and stops it. This happens after all remaining actions in the frame have finished executing. See also prevFrame() Example
In the following example, two SimpleButton objects control the timeline. The prev button moves the playhead to the previous frame, and the nextBtn button moves the playhead to the next frame: import flash.events.MouseEvent; mc1.stop(); prevBtn.addEventListener(MouseEvent.CLICK, goBack); nextBtn.addEventListener(MouseEvent.CLICK, goForward); function goBack(event:MouseEvent):void { mc1.prevFrame(); function goForward(event:MouseEvent):void { mc1.nextFrame(); public function nextScene(): void Moves the playhead to the next scene of the MovieClip instance. This happens after all remaining actions in the frame have finished executing. Example
In the following example, two SimpleButton objects control the timeline. The prevBtn button moves the playhead to the previous scene, and the nextBtn button moves the playhead to the next scene: import flash.events.MouseEvent; mc1.stop(); prevBtn.addEventListener(MouseEvent.CLICK, goBack); nextBtn.addEventListener(MouseEvent.CLICK, goForward); function goBack(event:MouseEvent):void { mc1.prevScene(); function goForward(event:MouseEvent):void { mc1.nextScene();
The following code uses the stop() method to stop a movie clip named mc1 and to resume playing when the user clicks the text field named continueText : import flash.text.TextField; import flash.events.MouseEvent; var continueText:TextField = new TextField(); continueText.text = "Play movie..."; addChild(continueText); mc1.stop(); continueText.addEventListener(MouseEvent.CLICK, resumeMovie); function resumeMovie(event:MouseEvent):void { mc1.play(); public function prevFrame(): void Sends the playhead to the previous frame and stops it. This happens after all remaining actions in the frame have finished executing. Example
In the following example, two SimpleButton objects control the timeline. The prev button moves the playhead to the previous frame, and the nextBtn button moves the playhead to the next frame: import flash.events.MouseEvent; mc1.stop(); prevBtn.addEventListener(MouseEvent.CLICK, goBack); nextBtn.addEventListener(MouseEvent.CLICK, goForward); function goBack(event:MouseEvent):void { mc1.prevFrame(); function goForward(event:MouseEvent):void { mc1.nextFrame(); public function prevScene(): void Moves the playhead to the previous scene of the MovieClip instance. This happens after all remaining actions in the frame have finished executing. Example
In the following example, two SimpleButton objects control the timeline. The prevBtn button moves the playhead to the previous scene, and the nextBtn button moves the playhead to the next scene: import flash.events.MouseEvent; mc1.stop(); prevBtn.addEventListener(MouseEvent.CLICK, goBack); nextBtn.addEventListener(MouseEvent.CLICK, goForward); function goBack(event:MouseEvent):void { mc1.prevScene(); function goForward(event:MouseEvent):void { mc1.nextScene();
MovieClipExample.as
The following example uses the MovieClipExample class to illustrate how to monitor various properties of a MovieClip. This task is accomplished by performing the following steps:
  • The constructor function defines a text field, which is used to display values of properties of the MovieClipExample object (which extends MovieClip).
  • The return value of the getPropertiesString() method is used as text for the outputText text field. The getPropertiesString() method returns a string that is populated with values of the following properties of the movie clip: currentFrame , currentLabel , currentScene , framesLoaded , totalFrames , and trackAsMenu .
  • Two lines of code in the constructor function adjust the width and height properties of the outputText text field.
  • The last line of the constructor function adds the outputText text field to the display list.
  • public function MovieClipExample() { var outputText:TextField = new TextField(); outputText.text = getPropertiesString(); outputText.width = stage.stageWidth; outputText.height = outputText.textHeight; addChild(outputText); private function getPropertiesString():String { var str:String = "" + "currentFrame: " + currentFrame + "\n" + "currentLabel: " + currentLabel + "\n" + "currentScene: " + currentScene + "\n" + "framesLoaded: " + framesLoaded + "\n" + "totalFrames: " + totalFrames + "\n" + "trackAsMenu: " + trackAsMenu + "\n"; return str;