MC的事件說明如下:
Load:當MC 被裝載進來的時候發生此事件
EnterFrame:當MC被卸載的時候發生此事件
MouseDown:當鼠標左鍵被按下時發生此事件
MouseUp:當鼠標左鍵被松開時發生此事件
MouseMove:當鼠標移動的時候發生此事件
Keydown:當鍵盤按鈕被按下時發生此事件
Keyup:當鍵盤按鈕被松開時發生此事件
Data:使用loadVariable或者loadMovie動作,當接受到數據時,發生此事件
MovieClip (對象)
MC對象的方法中,規定了一些操作MC目標的標準動作。另外,還提供了Action 面板所列出的標準動作之外的額外功能。你調用MC對象的方法時,不需要先調用構造函數,相反,你可以使用下面的語法來直接引用MC的實體名字。
anyMovieClip.play();
anyMovieClip.gotoAndPlay(3);
MovieClip對象方法列表:
方法 說明
attachMovie 綁定庫中的一段movie。
duplicateMovieClip 復制指定的movie clip。
getBounds 返回指定的坐標空間中Movie的最大和最小X、Y坐標值。
getBytesLoaded 返回指定MC中被載入的字節數。
getBytesTotal 返回指定MC的字節總數。
getURL 執行URL請求。
globalToLocal 將指針對象從主場景中的坐標系轉換到指定MC的本地坐標系中。
gotoAndPlay 跳到MC中的指定幀并開始播放動畫。
gotoAndStop 跳到MC中的指定幀并停止播放動畫。
hitTest 如果指定MC的范圍與目標MC的范圍交叉的話,返回true。
loadMovie 將指定的動畫載入到MC中。
loadVariables 從URL或者其他位置中載入變量到MC中。
localToGlobal 將指針對象從MC的本地坐標系中轉換到主場景中的坐標系中。
nextFrame 播放MC的下一幀。
play 播放指定的MC
prevFrame 播放MC的前一幀。
removeMovieclip 將用duplicateMovieClip動作或者attachMovie方法產生的MC從時間線上刪除。
startDrag 指定一個MC為可拖動的,并開始拖動這個MC。
stop 停止當前動畫的播放。
stopDrag 停止當前被拖動的任何MC。
swapDepths 將指定的MC與指定深度值所在的MC進行深度值的互換。
unloadMovie 將用loadMovie載入的動畫刪除。
MovieClip.attachMovie
語法:
anyMovieClip.attachMovie(idName, newname, depth);
參數:
idName 要綁定的庫中Movie的名字。這個名字就是元素的Linkage Properties對話框中輸入的標識名。
newname 就是被綁定MC的實體名,必須是唯一的。
depth 一個整數值,用來指定MC所在的深度值。
說明:
方法;為庫中的動畫產生一個新的實體,并綁定指定的anyMovieClip中。使用 removeMovieClip 或者 unloadMovie 動作或者方法可以刪除綁定的動畫。
播放器:
Flash 5 或以后版本。
參考:
removeMovieClip
unloadMovie
MovieClip.removeMovieClip
MovieClip.unloadMovie
MovieClip.duplicateMovieClip
語法:
anyMovieClip.duplicateMovieClip(newname, depth);
參數:
newname 復制MC使用的唯一標識,(就是實體名)。
depth 復制的MC所在的深度值。
說明:
方法;在動畫運行當中產生指定MC的新實體。 產生的MC總是在第一幀開始播放,而不管在復制MC時原始MC處于哪一幀。原始MC中的變量將不復制到新生成的MC中。如果原始MC被刪除,那么由它復制的MC也將被刪除。通過 duplicateMovieClip 產生的MC可以使用 removeMovieClip 動作或者方法來刪除。
播放器:
Flash 5 或以后版本
參考:
removeMovieClip
MovieClip.removeMovieClip
MovieClip.getBounds
語法:
anyMovieClip.getBounds(targetCoordinateSpace);
參數:
targetCoordinateSpace 作為轉換參考點使用的那個坐標系所在的目標路徑。
說明:
方法;返回MC在參數中指定的目標坐標系中的x,y坐標范圍。返回的對象中包含有以下屬性 {xMin, xMax, yMin, yMax}. 使用MC對象的 localToGlobal 和 globalToLocal 方法可以實現本地坐標系和主場景坐標系之間的相互轉換。
播放器:
Flash 5 或以后版本
例子:
下面的例子中,使用 getBounds 來獲取 myMoviceClip 實體在主場景坐標系中的坐標范圍:
myMovieClip.getBounds(._root);
參考:
MovieClip.globalToLocal
MovieClip.localToGlobal
MovieClip.getBytesLoaded
語法:
anyMovieClip.getBytesLoaded();
參數:
無
說明:
方法;返回指定MC對象被載入的字節數。因為內部的MC是自動裝載的,所以當MC對象是指定一個內部MC時,這個方法的返回值和MovieClip.getBytesTotal返回值是相同的。這個方法是特別用來在載入動畫中使用的,你可以通過比較getBytesLoaded與getBytesTotal來知道外部動畫載入的百分比。
播放器:
Flash 5 或以后版本
MovieClip.getBytesTotal
語法:
anyMovieClip.getBytesTotal();
參數:
無
說明:
方法;返回指定MC對象的字節總數。對于外部的MC,(主動畫或者是被載入到一個目標MC或層之中的MC),返回值就是SWF文件的大小。
播放器:
Flash 5 或以后版本。
MovieClip.getURL
語法:
anyMovieClip.getURL(URL [,window, variables]]);
參數:
URL 要執行的URL請求操作。
window 可選參數,指定URL響應所在的窗口名或者幀名。 你也可以使用下面的目標名: _self 使用當前窗口中的當前幀,_blank 指定一個新的窗口,_parent 指定當前幀的父窗口, _top 指定當前窗口的最頂級窗口。
variables 可選參數,指定傳遞變量的方法,如果不傳遞變量,就忽略這個參數;否則,指定變量的傳遞方法為GET或者POST。 GET方法將變量加到URL的末尾,通常在變量較少的時候使用。POST 將變量以分隔開來的HTTP頭傳遞變量,通常在傳遞變量較長時使用。
說明:
方法;在特定的窗口中執行特定的URL響應。getURL方法也可以用來傳遞變量到URL定義的另一個應用中,通過GET或者POST的方法。
播放器:
Flash 5 或以后版本
MovieClip.globalToLocal
語法:
anyMovieClip.globalToLocal(point);
參數:
point 一個以x,y坐標為屬性的對象(這里暫時叫指針對象吧),這個對象是通過產生新的generic Object對象獲得的。
說明:
方法; 將指針對象從主場景坐標系轉換到MC的本地坐標系中。
播放器:
Flash 5 或以后版本
例子:
下面的例子將包含有主場景的x,y坐標的指針對象轉換成MC中的本地坐標。
onClipEvent(mouseMove) {
point = new object();
point.x = _root._xmouse;
point.y = _root._ymouse;
globalToLocal(point);
_root.out = _xmouse + " === " + _ymouse;
_root.out2 = point.x + " === " + point.y;
updateAfterEvent();
}
參考:
MovieClip.localToGlobal
MovieClip.getBounds
MovieClip.gotoAndPlay
語法:
anyMovieClip.gotoAndPlay(frame);
參數:
frame 播放頭將要被設置的幀位置(就是要開始播放的幀位置)。
說明:
方法;在指定的幀數開始播放動畫。
播放器:
Flash 5 或以后版本。
MovieClip.gotoAndStop
語法:
anyMovieClip.gotoAndStop(frame);
參數:
frame 播放頭所要移到的幀位置。
說明:
方法;跳到指定的幀并停止動畫的播放。
播放器:
Flash 5 或以后版本。
MovieClip.hitTest
語法:
anyMovieClip.hitTest(x, y, shapeFlag);
anyMovieClip.hitTest(target);
參數:
x 在主場景中點擊區的x坐標。
y 在主場景中點擊區的y坐標。
x,y坐標都是定義在主場景的坐標系中的。
target 判斷anyMovieClip這個實體所要相交的目標MC。這個目標通常是表現為一個按紐或者是文本框。
shapeFlag 是一個布爾值,當為(true)值時,將根據實體的外型進行判斷,當為(false)值時,則簡單地按照實體的范圍框(即按照MC的上下左右范圍)進行判斷。這個參數只用在第一種形式中。
說明:
方法;判斷指定的anyMovieClip是否和另外一個MC或者用x.y坐標指定的點交叉。
第一種用法將指定實體的外形或者范圍框(通過shapeFlag設置)與x,y坐標的點相比。如果shapFlag為true,那么使用實體中的實際外形進行比較,實體中任何一個點經過(x,y)這個點時,該方法返回值true。這在判斷MC的指定點擊區(熱區)時非常有用。
第二種用法判斷指定實體和目標的范圍框是否交叉,它們任何點的交叉將導致返回值為true。
播放器:
Flash 5 或以后版本
例子:
下面的例子判斷你的MC實體 yourmc 是否經過點(100,200):
if ( yourmc.hitTest( 100 , 200 , false ) ); //(100,200)為你判斷的點的坐標
其中最后一個參數: false 判斷 yourmc 的范圍框(上下左右范圍)是否經過(100,200)的點
true 判斷 yourmc 的實際外形是否經過(100,200)的點
下面的例子利用hitTest與x_mouse和y_mouse參數來判斷鼠標是否經過目標MC的范圍:
if (hitTest( _root._xmouse, _root._ymouse, false)); (請放在MC的onClipEvent (enterFrame)事件中,否則看不到效果)
下面的例子判斷MC實體ball是否與另一MC實體square交叉:
if(_root.ball.hittest(_root.square)){
trace("ball intersects square");
}
參考:
MovieClip.localToGlobal
MovieClip.globalToLocal
MovieClip.getBounds
MovieClip.loadMovie
語法:
anyMovieClip.loadMovie(url [,variables]);
參數:
url 到要載入的SWF文件的絕對或者相對的URL路徑。相對路徑必須連接到SWF文件中。URL路徑必須在當前動畫所在路徑的同一個子域。當使用FLash播放器或者在FLash中使用Test-mode模式直接測試時,所有的SWF文件必須放在同一個目錄下,文件名中不能包含有文件夾名以及驅動器名。
variables 可選參數;指定載入動畫時關聯變量使用的方法。這個參數必須是字符串"GET"或者"POST"。如果沒有變量相關聯,就忽略這個參數。否則指定載入變量的方法為GET或者POST。GET方法將變量加到URL的末尾,通常在變量較少的時候使用。POST 將變量以分隔開來的HTTP頭傳遞變量,通常在傳遞變量較長時使用。
說明:
方法;在不關閉Flash播放器的情況下,播放附加的動畫。通常情況下,Flash播放器播放單一的動畫(SWF文件)。loadMovie方法允許你一次播放多個動畫或者不經過任何HTML請求在動畫之間跳轉。
使用unloadMovie動作來刪除有loadMovie動作載入的動畫。
使用loadVariables方法來保持當前動畫,同時將一些變量值更新為新的值。
播放器:
Flash 5 或以后版本
參考:
MovieClip.loadVariables
MovieClip.unloadMovie
MovieClip.loadVariables
語法:
anyMovieClip.loadVariables(url, variables);
參數:
url 外部文件的絕對或者相對URL路徑。URL的主機名必須在當前動畫所在的子域中。
variables 返回變量的方法。GET方法將變量加到URL的末尾,通常在變量較少的時候使用。POST 將變量以分隔開來的HTTP頭傳遞變量,通常在傳遞變量較長時使用。
說明:
方法;從外部的文件中讀取數據,設置動畫或者MC的變量。這個外部的文件可以是CGI、ASP、PHP程序產生的文本文件,而且可以包含任何數量的變量。
這個方法可以用來將當前動畫的變量值更新為新的值。
這個方法要求用URL連接的文本必須是標準的MIME格式文本:
application/x-www-urlformencoded (CGI 程序格式).
播放器:
Flash 5 或以后版本
參考:
MovieClip.loadMovie
MovieClip.localToGlobal
語法:
anyMovieClip.localToGlobal(point);
參數:
point 一個以x,y坐標為屬性的對象(這里暫時叫指針對象吧),這個對象是通過產生新的generic Object對象獲得的。
說明:
方法;將指針對象從MC的本地坐標系轉換到主場景坐標系中。
播放器:
Flash 5 或以后版本
例子:
下面的例子將指針對象從MC本地的X,Y坐標轉換到主場景坐標系中。本地的X,Y坐標是使用xmouse 和ymouse來獲取的。
onClipEvent(mouseMove) {
point = new object();
point.x = _xmouse;
point.y = _ymouse;
_root.out3 = point.x + " === " + point.y;
_root.out = _root._xmouse + " === " + _root._ymouse;
localToGlobal(point);
_root.out2 = point.x + " === " + point.y;
updateAfterEvent();
}
參考:
MovieClip.globalToLocal
MovieClip.nextFrame
語法:
anyMovieClip.nextFrame();
參數:
無
說明:
方法;將MC的播放頭設置在下一幀。
播放器:
Flash 5 或以后版本
MovieClip.play
語法:
anyMovieClip.play();
參數:
無
說明:
方法;撥放MC。
播放器:
Flash 5 或以后版本。
MovieClip.prevFrame
語法:
anyMovieClip.prevFrame();
參數:
無
說明:
方法;將播放頭設置為前一幀并停止播放。
播放器:
Flash 5 或以后版本。
MovieClip.removeMovieClip
語法:
anyMovieClip.removeMovieClip();
參數:
無
說明:
方法;刪除MC實體,該MC實體是通過duplicateMoviceclip動作,或者通過MC對象的attachMovie方法所產生的。
播放器:
Flash 5 或以后版本。
參考:
MovieClip.loadMovie
MovieClip.attachMovie
MovieClip.startDrag
語法:
anyMovieClip.startDrag([lock, left, right, top, bottom]);
參數:
lock 一個布爾值,當為(true)時,可拖動的MC將鎖定在鼠標的中心;當為(false)時,可拖動的MC將鎖定在用戶第一次點擊這個MC的位置。這個參數是一個可選參數。
left, top, right, bottom 限定拖曳MC約束范圍的參數,這些參數是可選參數。
說明:
方法;允許用戶拖動指定的MC。這個MC將一直保持可拖動狀態直到執行了stopDrag方法,或者是將其他的MC設置為可拖動狀態。在同一時間內,只有一個MC能被拖動。
播放器:
Flash 5 或以后版本
參考:
MovieClip.stopDrag
_droptarget
MovieClip.stop
語法:
anyMovieClip.stop();
參數:
無
說明:
方法;停止當前MC的播放。
播放器:
Flash 5 或以后版本。
MovieClip.stopDrag
語法:
anyMovieClip.stopDrag();
參數:
無。
說明:
方法;停止正在執行的startDrag方法。當一個MC執行startDrag方法后,這個MC將一直保持可拖動狀態直到執行了stopDrag方法,或者是將其他的MC設置為可拖動狀態。在同一時間內,只有一個MC能被拖動。
播放器:
Flash 5 或以后版本。
參考:
_droptarget
MovieClip.startDrag
MovieClip.swapDepths
語法:
anyMovieClip.swapDepths(depth);
anyMovieClip.swapDepths(target);
參數:
target 一個MC實體,它的深度值將和anyMovieClip指定的那個實體的深度值進行交換。兩個實體必須要有相同的父MC。
depth 指定anyMovieClip所要放置的深度值。
說明:
方法;交換指定實體同參數指定的目標或者深度所在的MC之間的z值或者說層疊順序(深度)。兩個實體必須要有相同的父MC。交換實體的深度值的作用效果是將一個實體放置到另一個實體的前面或者是后面。轉換深度時,如果MC正在進行過渡,則MC的過渡將停止。(經過測試,停止的是當前MC的過渡動作,并不是MC內部的過渡動作等。)
播放器:
Flash 5 或以后版本
參考:
_level
MovieClip.unloadMovie
語法:
anyMovieClip.unloadMovie();
參數:
無
說明:
方法;將用loadMovie 或者 attachMovie 方法載入的MC刪除。
播放器:
Flash 5 或以后版本
參考:
MovieClip.loadMovie
MovieClip.attachMovie