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