版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1本章目錄
5.1ActionScript3.0概述5.2動作面板
5.3ActionScript語法基礎(chǔ)
5.4程序流程控制5.5類5.6常用交互控制語句5.7綜合應(yīng)用實例2本章導(dǎo)讀
Flash動畫不僅可以通過調(diào)整時間軸中關(guān)鍵幀的順序調(diào)整動畫的播放順序,也可以通過書寫ActionScript3.0腳本語言實現(xiàn)動畫的交互控制。ActionScript是Flash動畫設(shè)計中的一種高級技術(shù),也是一種編程語言,類似于我們學(xué)習(xí)的其他高級語言,如:C程序設(shè)計語言等高級語言。如果熟練掌握了本章內(nèi)容,就可以設(shè)計出更加完美的Flash動畫作品。本章就來詳細(xì)講述ActionScript腳本語言基本概念和使用方法。下面,就來感受一下腳本的超強(qiáng)魅力吧!學(xué)習(xí)目標(biāo)了解ActionScript的基本概念和基本功能。會通過動作面板為對象添加各種動作。掌握ActionScript的基本語法和基本流程控制語句。了解類的概念、類屬性和類方法。掌握常用的交互控制語句,會將交互式控制應(yīng)用在Flash動畫中,實現(xiàn)動畫的交互控制。35.1ActionScript3.0概述5.1.1ActionScript3.0功能介紹1)采用更先進(jìn)的編譯器代碼庫,更加嚴(yán)格的執(zhí)行ECMA263標(biāo)準(zhǔn),與較早版本相比更具有執(zhí)行性,ECMA263是一種ECMAScript標(biāo)準(zhǔn)。2)將虛擬機(jī)AVM1升級為AVM2,使用全新的字節(jié)代碼指令集,大大提高系統(tǒng)性能。3)改進(jìn)了應(yīng)用程序編程接口,實現(xiàn)對對象的低級控制和面向?qū)ο竽P汀?)實現(xiàn)了基于E4X規(guī)范的XMLAPI,E4X是ECMAScript的一種語言擴(kuò)展,它將XML添加為語言的基本數(shù)據(jù)類型。45.1.2ActionScript3.0基本概念1)動作:是指程序語句,是ActionScript腳本語言的核心內(nèi)容。2)類:常用來定義新的對象類型,是一系列相互之間有聯(lián)系的數(shù)據(jù)集合,3)構(gòu)造器:是一種函數(shù),用來定義類的屬性和方法。4)事件:是執(zhí)行某一個動作提供的一種觸發(fā)條件,這個觸發(fā)功能的部分就是ActionScript事件。5)實例:實例是屬于某個類的對象,一個類的每一個實例都包含類的所有屬性和方法。6)方法:是被指派給某個對象的函數(shù),該函數(shù)被分配后可以作為這個對象的方法被調(diào)用。7)對象:是指屬性的集合,每個對象都有自己的名稱和值,通過對象可以自由訪問某個類型的信息。8)屬性:用來定義對象的某個特征。9)目標(biāo)路徑:是影片剪輯實例名稱、變量和對象的層次性的地址。55.2動作面板5.2.1動作面板介紹動作工具箱導(dǎo)航窗口工具欄腳本編輯區(qū)狀態(tài)欄65.2.1動作面板介紹1.動作工具箱該工具箱包括了所有的ActionScript3.0動作命令和相關(guān)語法。在工具箱列表中,圖標(biāo)表示命令夾,類似于Windows資源管理器中的文件夾,單擊可以展開該命令夾列表,顯示下面的命令項。圖標(biāo)表示一個可用的命令、語法或其他相關(guān)工具,雙擊即可在腳本編輯區(qū)被引用。2.導(dǎo)航窗口該窗口位于工具箱的下方,用來顯示當(dāng)前ActionScript3.0動作腳本添加的對象。3.動作編輯區(qū)該區(qū)域是進(jìn)行ActionScript3.0腳本編輯的主要區(qū)域,當(dāng)前對象的所有腳本語句都將顯示在該區(qū)域中,也在這里進(jìn)行動作腳本的編輯工作。4.工具欄位于腳本編輯區(qū)的上方,該工具欄顯示了ActionScript3.0動作腳本編輯過程中經(jīng)常用到的命令。75.2.2為常見對象添加動作1.為關(guān)鍵幀添加動作2.為按鈕添加動作3.為影片添加動作8為關(guān)鍵幀添加動作的具體操作步驟如下:1)在“時間軸”中選中要添加動作的關(guān)鍵幀;2)選擇【窗口】菜單中的【動作】命令或鍵盤上的F9,打開“動作”面板,輸入AS代碼,如右圖所示;3)打開“時間軸”面板,這時可以看到關(guān)鍵幀上出現(xiàn)了一個小小的“”,表示該關(guān)鍵幀上插入了AS代碼。當(dāng)Flash動畫播放到該關(guān)鍵幀時AS代碼就會被觸發(fā)并執(zhí)行。返回9為按鈕添加動作的具體操作步驟如下:1)選中要添加AS代碼的按鈕;2)打開“動作”面板,在腳本編輯區(qū)中輸入AS代碼;3)在設(shè)置按鈕動作時,必須要明確它的鼠標(biāo)事件類型,如圖所示。返回10為影片添加動作的具體操作方法如下:1)選中要添加動作的影片元件。2)打開“動作”面板,單擊“動作”面板工具欄中的,在彈出的下拉菜單中選擇要添加的動作,如圖所示。返回115.3ActionScript語法基礎(chǔ)5.3.1常量和變量1.常量ConstconstName:DateType=Value;一般格式為:常量是指在程序運(yùn)行過程中其值保持不變的量。常量只能被賦值一次,而且要在最接近常量聲明的區(qū)域給常量賦值。其中,constName表示常量名稱,DateType表示常量類型,Value表示常量值。如:ConstMAX:int=100;注意:ActionScript3.0中定義的常量一般使用大寫字母,各個單詞之間用下劃線分隔。125.3.1常量和變量2.變量變量是指程序運(yùn)行中可以改變的量。變量由兩部分構(gòu)成:變量名和變量值。變量名用來區(qū)分變量的不同,變量值用來確定變量的類型和大小。變量的聲明
變量在使用之前,必須先對變量進(jìn)行聲明
VarVariableName:DateType=Value;13變量的作用域變量的作用域是指能夠識別和引用該變量的區(qū)域。也就是變量在什么范圍內(nèi)是可以被訪問的。
在ActionScript3.0中根據(jù)變量的作用范圍將變量分成三種類型:局部變量:在自身代碼塊中有效的變量(在大括號內(nèi))。就是在聲明它的語句塊內(nèi)(如一個函數(shù)體)是可以訪問的變量,通常是為了避免沖突和節(jié)省內(nèi)存空間而使用的。如果超出了變量的作用域,該變量則無法被引用。時間軸變量:可以在使用目標(biāo)路徑指定的任何時間軸內(nèi)有效。時間軸范圍變量聲明后,在聲明它的整個層級的時間軸內(nèi)是可以被訪問的。全局變量:在整個影片中都可以訪問的變量。該變量類型在所有函數(shù)或類的外部聲明,它可以被同一個程序中的任何代碼所引用。145.3.2數(shù)據(jù)類型和關(guān)鍵字1.數(shù)據(jù)類型、基礎(chǔ)數(shù)據(jù)類型復(fù)雜數(shù)據(jù)類型
在ActionScript3.0中,要聲明一個常量或變量時,常常為其指定數(shù)據(jù)類型。15數(shù)據(jù)類型詳細(xì)說明Number用來表示所有數(shù)字,包括整數(shù)、無符號整數(shù)以及浮點數(shù);采用64位雙精度格式存儲數(shù)據(jù)。Int整型數(shù)據(jù)類型,取值范圍是自-2147483648~2147483647之間的整數(shù),默認(rèn)值為0。Uint無符號整型(非負(fù)數(shù)),取值范圍為0~4294967295之間的整數(shù),默認(rèn)值為0.Boolean邏輯型數(shù)據(jù),滿足條件為真,用True表示;不滿足條件為假,用False表示。NULL表示特殊的數(shù)據(jù)類型。其值只有一個為空值,用null表示。Null為所有字符串類型和所有類的默認(rèn)值,不能作為類修飾符。Void表示無類型變量,用undefined表示,其值只有一個,常用作函數(shù)的返回類型。String表示一個16位的字符序列,在數(shù)據(jù)內(nèi)部被存儲為Unicode字符?;A(chǔ)數(shù)據(jù)類型16復(fù)雜數(shù)據(jù)類型
ActionScript3.0除了提供以上七種基礎(chǔ)數(shù)據(jù)類型之外,還提供了一些復(fù)雜數(shù)據(jù)類型,分為核心數(shù)據(jù)類型和內(nèi)置數(shù)據(jù)類型兩種?!锖诵臄?shù)據(jù)類型核心數(shù)據(jù)類型是的核心數(shù)據(jù),主要包括Object(對象型)、Array(數(shù)組型)、Date(日期型)、Function(函數(shù))、XML(可擴(kuò)充的標(biāo)記語言對象)、RegExp(正則表達(dá)式對象)等。★內(nèi)置數(shù)據(jù)類型常見的內(nèi)置數(shù)據(jù)類型主要有:MovieClip(影片剪輯元件)、TextField(文本字段)、SimpleButton(按鈕元件)、Date(日期或時間)等。175.3.2數(shù)據(jù)類型和關(guān)鍵字2.關(guān)鍵字在ActionScript3.0中保留了一些具有特殊含義的單詞,用于執(zhí)行某項特定的操作,供AS調(diào)用,這些單詞被稱作關(guān)鍵字。
ActionScript3.0中的關(guān)鍵字breakelseinstanceoftypeofcasefornewvarcontinuefunctionreturnvoiddefaultifswitchwhiledeleteinthiswith185.3.3運(yùn)算符1.算術(shù)運(yùn)算符運(yùn)算符注釋運(yùn)算符注釋+執(zhí)行加法運(yùn)算++用于變量自遞增運(yùn)算,如:++i-執(zhí)行減法運(yùn)算--用于變量自遞減運(yùn)算,如:--i*執(zhí)行乘法運(yùn)算%5求模(求余數(shù))運(yùn)算,如:10%3=1/執(zhí)行除法運(yùn)算192.賦值運(yùn)算符運(yùn)算符注釋運(yùn)算符注釋+=相加并賦值,如:<<=按位左移并賦值-=相減并賦值>>=按位右移并賦值*=相乘并賦值>>>=右移位填0并賦值/=相除并賦值|=按位“或”并賦值=賦值運(yùn)算&=按位“與”并賦值%=求余并賦值^=按位“異或”并賦值203.比較運(yùn)算符
比較運(yùn)算符常用于比較表達(dá)式的值,結(jié)果返回布爾值(true或false)。比較運(yùn)算符在ActionScript3.0中常用于條件語句或判斷循環(huán)程序是否結(jié)束。
運(yùn)算符注釋運(yùn)算符注釋>大于=等于判斷<小于==恒等判斷>=大于或等于!=不等判斷<=小于或等于!==不恒等判斷214.邏輯運(yùn)算符邏輯運(yùn)算符是指對布爾表達(dá)式或布爾值進(jìn)行運(yùn)算并比較,結(jié)果返回布爾值(true或false)。邏輯運(yùn)算符有3個,分別是:&&(邏輯與)、‖(邏輯或)、!(邏輯非)。●當(dāng)兩個操作數(shù)都為true時,執(zhí)行邏輯“與”運(yùn)算后,結(jié)果為true,其余情況下結(jié)果均為false?!癞?dāng)兩個操作數(shù)都為false時,執(zhí)行邏輯“或”運(yùn)算后,結(jié)果為false,其余情況下結(jié)果均為true?!癞?dāng)執(zhí)行邏輯非運(yùn)算時,如果原表達(dá)式值為true,則結(jié)果為false;如果原表達(dá)式值為false則結(jié)果為true。225.按位運(yùn)算符按位運(yùn)算符是一組常用于二進(jìn)制運(yùn)算的運(yùn)算符號,是根據(jù)二進(jìn)制的位來完成操作的。運(yùn)算符注釋運(yùn)算符注釋&按位與運(yùn)算>>>無符號的按位右移|按位或運(yùn)算^按位異或>>按位右移~按位取反運(yùn)算<<按位左移注意:當(dāng)使用按位運(yùn)算符時,必須先把數(shù)字轉(zhuǎn)換成二進(jìn)制才能進(jìn)行運(yùn)算。235.3.4函數(shù)FlashCS5中的函數(shù)可以分為系統(tǒng)函數(shù)和自定義函數(shù)。
1.自定義函數(shù)1)使用格式function函數(shù)名(參數(shù)){執(zhí)行的語句塊;return表達(dá)式;}例1:定義一個輸出函數(shù)week()。functionweek(){//定義一個函數(shù)week()trace("TodayisMonday");//設(shè)置函數(shù)week()的功能}當(dāng)調(diào)用函數(shù)week()時,輸出結(jié)果:TodayisMonday245.3.4函數(shù)2.函數(shù)調(diào)用函數(shù)聲明以后只要輸入函數(shù)名和它的參數(shù)就可以被調(diào)用了,可以把函數(shù)的返回值賦給一個變量。除此之外,我們也可以直接調(diào)用函數(shù)而不賦值給變量,函數(shù)的調(diào)用語句可以被作為一個與返回值數(shù)據(jù)類型相同的常量處理。定義后的函數(shù)可以在它的作用域內(nèi)無限次的被調(diào)用,每次調(diào)用都可以給予不同的參數(shù)。對于沒有參數(shù)的函數(shù),只要輸入函數(shù)名加括號就可以完成調(diào)用了。例如://得到Flash軟件的版本信息trace(getVersion());253.函數(shù)的作用域
函數(shù)的作用域是指定義它的代碼所在的對象或時間線范圍。全局函數(shù)相當(dāng)于一個全局對象的子函數(shù)。如果要調(diào)用不在同一對象層次的函數(shù),就必須使用路徑“Path”。如果在一個子MovieClip中藥調(diào)用根目錄中的函數(shù)必須使用以下格式:_root.myFunction();264.局部變量Functiontest(a){Varb=”words”;//定義局部變量bc=”Howareyou?”;//定義變量ctrace(″----從內(nèi)部訪問變量-----″);trace(″a=″+a);//顯示參數(shù)atrace(″b=″+b);//顯示局部變量btrace(″c=″+c);//顯示變量c}//調(diào)用函數(shù)test(″Symbol″);trace(″----從外部訪問變量-----″);trace(″a=″+a);trace(″b=″+b);trace(″c=″+c);275.3.5基本語法1.點點語法是指在腳本代碼中出現(xiàn)的“.”,它表示某個對象的屬性或方法,再或者是某個電影片段或變量的目標(biāo)路徑。點語法如果用在目標(biāo)路徑中,一般包含兩種。分別是:相對路徑和絕對路徑。相對路徑常用_parent表示,絕對路徑常用_root表示。282.分號在Flash的動作腳本中,“;”用來表示一個語句的結(jié)束。在平時編程時,一定要養(yǎng)成良好的編程習(xí)慣,及時在末尾添加“;”,使得編程語句規(guī)范,增強(qiáng)程序的可讀性、條理性。但是有一點需要注意,如果是某個選擇結(jié)構(gòu)開頭或者是循環(huán)結(jié)構(gòu)開頭,左花括號處和內(nèi)層花括號處不應(yīng)有分號。舉例如下:my_mc.onEnterFrame=function(){if(getProperty("my_mc",_alpha)!=0){setProperty("my_mc",_alpha,getProperty("my_mc",_alpha)-5);setProperty("my_mc",_xscale,getProperty("my_mc",_xscale)+10);setProperty("my_mc",_yscale,getProperty("my_mc",_yscale)+10);}}293.小括號
在ActionScript3.0中,小括號用在是編寫動作腳本時,定義和調(diào)用函數(shù)過程中使用的。
小括號一般有三種使用方式,分別是:1)更改表達(dá)式的運(yùn)算順序;2)結(jié)合使用小括號和逗號運(yùn)算符,可以計算一系列表達(dá)式并返回最后一個表達(dá)式的值;3)可以向函數(shù)或方法傳遞一個或多個參數(shù)。304.大括號
在FlashCS5中,腳本代碼所用的大括號類似于C語言規(guī)范。通過使用“{}”可將整個大程序,分成一個個的模塊,可以把大括號中的代碼看作一句完整的語句。5.注釋在ActionScript3.0中,注釋語句主要包含兩種類型:單行注釋和多行注釋。單行注釋用“//”表示,在該字符后添加說明性語句。多行注釋以一個正斜杠和一個星號(/*)開頭,以一個星號和一個正斜杠(*/)結(jié)尾。在腳本編輯區(qū)域,注釋語句在窗口中一般用灰色顯示。setProperty("my_mc",_alpha,"55")//設(shè)置影片剪輯“my_mc”的透明度為55%setProperty("my_mc",_xscale,200)//設(shè)置影片剪輯“my_mc”水平放大一倍315.4程序流程控制5.4.1條件語句1.if語句使用格式:if(條件){語句1;}當(dāng)條件成立時,執(zhí)行“語句1”的內(nèi)容。當(dāng)條件不成立時,執(zhí)行“語句1”后面的內(nèi)容。例如:if(a>10){//判斷a是否大于10trace("ais>10");//若成立,則輸出ais>10}322.if…else語句格式如下:if(條件1){語句1;}else{語句2;}當(dāng)條件1滿足時,則執(zhí)行“語句1”的內(nèi)容;當(dāng)條件2滿足時,則執(zhí)行“語句2”的內(nèi)容。
333.switch語句
Swith語句用于對表達(dá)式進(jìn)行求值,然后根據(jù)表達(dá)式的結(jié)果來確定要執(zhí)行的代碼塊。代碼塊以case語句開頭,以break語句結(jié)尾。1)使用格式switch(表達(dá)式){case值1:語句1;break;case值2:語句2;break;……default:語句n;}先計算表達(dá)式的值,然后去各個case子句中找到對應(yīng)的執(zhí)行語句。如果找不到對應(yīng)的執(zhí)行語句,就執(zhí)行default后面的語句。343.switch語句2)用法舉例varn:Number=25;switch(Math.floor(n/10)){case1: trace("number=1"); break;case2: trace("number=2"); break;case3: trace("number=3"); break;default: trace("number=?");}輸出結(jié)果:number=2355.4.2循環(huán)語句1.while循環(huán)while語句通過重復(fù)執(zhí)行某條語句或某段程序?qū)崿F(xiàn)循環(huán)。當(dāng)系統(tǒng)執(zhí)行while語句時,會先計算條件表達(dá)式的值,如果值為true時,則執(zhí)行循環(huán)體的語句,如果值為false時,則退出循環(huán)體。dowhile語句與while語句一樣可以創(chuàng)建相同的循環(huán)。二者區(qū)別是:dowhile語句對條件表達(dá)式的判斷是在循環(huán)結(jié)束處,而while循環(huán)對條件表達(dá)式判斷是在循環(huán)開始處。dowhile循環(huán)語句至少會執(zhí)行一次循環(huán)體。361)while循環(huán)使用格式:while(條件){執(zhí)行語句塊;}當(dāng)“條件”成立時,程序就會一直執(zhí)行“執(zhí)行的代碼塊”,當(dāng)“條件”不成立時,則跳過“執(zhí)行的代碼塊”并結(jié)束循環(huán)。用法舉例:vari:number=8;//定義一個數(shù)字型變量i,并賦初值8while(i>=0){//先判斷條件trace(i);//若條件成立,則輸出ii=i-1;//i自身減1}輸出結(jié)果:依次輸出8、7、6、5、4、3、2、1、0372)do...while循環(huán)使用格式do{執(zhí)行語句塊;}while(條件)先執(zhí)行代碼塊,后判斷條件。用法舉例vari:Number=8;do{trace(i);//先執(zhí)行代碼塊輸出ii=i-1;}while(i>=0)//再判斷條件輸出結(jié)果:依次輸出8、7、6、5、4、3、2、1
382.for循環(huán)1)for語句使用格式:for(變量初值;條件表達(dá)式;變量更新表達(dá)式){執(zhí)行語句塊;}用法舉例:對1~100之間的偶數(shù)求和。Vari:Number=0;varsum:Number=0;for(i=1;i<=100;i=i+2){sum=sum+i;}trace(sum);輸出結(jié)果:2500。
392.for循環(huán)2)for…in語句for…in語句經(jīng)常用在對象的屬性或數(shù)組的元素中,可用一個變量名來搜索對象,然后執(zhí)行每個對象中的表達(dá)式。使用格式:for(變量in對象|數(shù)組){執(zhí)行語句塊;}使用for…in語句執(zhí)行循環(huán)時,變量的類型必須為string類型。如果聲明Number等其他類型,將不能正確地輸出屬性名或?qū)傩灾怠?0用法舉例:Varobj:object={Name:"TOM",Age:25};//創(chuàng)建object對象For(vari:*inobj)Trace(i+":"+obj[i]);}輸出結(jié)果為:Name:TomAge:25
413)foreach…in語句foreach…in語句用于循環(huán)訪問集合中的項目,它可以是XML或XMLList對象中的標(biāo)簽、對象屬性保存的值或數(shù)組元素。2.for循環(huán)使用格式:Foreach(變量in對象|數(shù)組){Statements;}注意:在一般情況下,foreach…in語句通常用來訪問通用對象的屬性,語句中的迭代變量包含屬性所保存的值,而不包含屬性的名稱。42用法舉例:Varobj:Object={Name:"Mary",Age:20};//創(chuàng)建Objcet對象Foreach(vari:*inobj){Trace(i);}輸出結(jié)果為:20Mary435.5類5.5.1類的定義1.類的概念類是最基本的編程結(jié)構(gòu)。類是對象的抽象表現(xiàn)形式,一般用來存儲和對象有關(guān)的可保存的數(shù)據(jù)類型以及對象的行為信息。通過使用類可以更好的實現(xiàn)控制對象的創(chuàng)建和交互。類包含類名和類體,類體又包括屬性和方法。2.類的定義PublicclassclassName{//類體}所有的類都必須放在擴(kuò)展名為.as的文件中,每個as文件中只能定一個public類,并且類名要與.as的文件名相同。445.5.1類的定義3.類體類體放在大括號“{}”內(nèi),用于定義類的變量、常量和方法。
PublicclassSampleClass{PublicnamespacesampleNamespace;sampleNamespacefunctiondoanything():void;}455.5.2類屬性類的屬性是指和類關(guān)聯(lián)的變量,通過關(guān)鍵字var來聲明。
1)類屬性分類屬性名稱注釋dynamic允許在運(yùn)行時向?qū)嵗砑訉傩訤inal不允許由其他類擴(kuò)展Inernal(默認(rèn))對當(dāng)前包內(nèi)的引用具有可見性公共對所有位置的引用具有可見性462)類屬性定義進(jìn)行類屬性定義時,一般將常量或變量放在構(gòu)造函數(shù)外部,通過public修飾符確保類屬性可以被外部引用,具體如下:Package{Publicclassclassname{Publicconstpublicconstant=val1;Publicvarattributename=val2;}}475.5.3類方法在ActionScript3.0中,類方法是類定義中的函數(shù),創(chuàng)建一個實例后,該實例就會捆綁一個方法。定義方法必須使用function關(guān)鍵字聲明。//定義屬性Varname:String="小狗";PublicfunctionGetAnimalName():String{R;}485.6常用交互控制語句5.6.1常用控制語句1.Play語句和Stop語句1)Play語句使用格式:play()2)Stop語句使用格式stop()功能:該命令沒有參數(shù),功能是使動畫從它的當(dāng)前位置開始放映。功能:該命令沒有參數(shù),功能是停止播放動畫,并停在當(dāng)前幀位置。495.6.1常用控制語句
2.gotoAndPlay和goAndStop命令1)gotoAndPlay使用格式:gotoAndPlay(frame)frame:跳轉(zhuǎn)到幀的標(biāo)簽名稱或幀數(shù)。
該命令用來控制影片跳轉(zhuǎn)到指定的幀,并開始播放。
2)gotoAndStop命令(跳至…停止播放)gotoAndStop(frame)frame:跳轉(zhuǎn)到幀的標(biāo)簽名稱或幀數(shù)。
該命令用來控制影片跳轉(zhuǎn)到指定的幀,并停止在該幀。505.6.1常用控制語句3.stopAllSounds命令stopAllSounds()該命令沒有參數(shù),用來停止當(dāng)前FlashPlayer中播放的所有聲音而不停止影片的播放。515.6.2按鈕事件和影片剪輯事件1.按鈕事件使用格式:on(事件){執(zhí)行動作;}執(zhí)行某種按鈕事件代碼。
常見的按鈕事件有以下幾種:①on(press):在按鈕上按下鼠標(biāo)左鍵,動作觸發(fā)。②on(release):在按鈕上按下鼠標(biāo)左鍵后再釋放鼠標(biāo),動作觸發(fā)。③on(rollOver):鼠標(biāo)移動到按鈕上動作觸發(fā)。④on(rollOut):鼠標(biāo)移出按鈕區(qū)域動作觸發(fā)。525.6.2按鈕事件和影片剪輯事件2.onClipEvent()1)使用格式:onClipEvent(事件){執(zhí)行的動作;}執(zhí)行影片剪輯事件代碼。
常見的影片剪輯事件有以下幾種:①onClipEvent(load):影片剪輯被加載到目前時間軸時,動作觸發(fā)。②onClipEvent(unload):影片剪輯被刪除時,動作觸發(fā)。③onClipEvent(enterFrame):當(dāng)播放頭進(jìn)入影片剪輯所在的幀時,動作觸發(fā)。④onClipEvent(mouseMove):當(dāng)移動鼠標(biāo)時,動作觸發(fā)。⑤onClipEvent(mouseDown):當(dāng)按下鼠標(biāo)左鍵時,動作觸發(fā)。⑥onClipEvent(mouseUp):當(dāng)釋放鼠標(biāo)左鍵時,動作觸發(fā)。532)用法舉例繪制一個五角星,將其轉(zhuǎn)換為影片剪輯,并給該影片剪輯添加如下動作代碼:onClipEvent(enterFrame){//當(dāng)播放頭進(jìn)入影片剪輯所在幀時_rotation+=10;//讓影片剪輯順時針旋轉(zhuǎn),每次旋轉(zhuǎn)10°}運(yùn)行結(jié)果:影片剪輯五角星不斷的旋轉(zhuǎn),每次旋轉(zhuǎn)10°。545.6.3事件處理函數(shù)1.按鈕事件處理函數(shù)使用格式:按鈕的實例名稱.按鈕事件處理函數(shù)=function(){執(zhí)行的動作;}功能:執(zhí)行某個按鈕事件的處理函數(shù)的腳本代碼;常見的按鈕事件處理函數(shù)有以下幾種:①onPress:在按鈕上按下鼠標(biāo)左鍵時啟用。②onRelease:在按鈕上按下鼠標(biāo)左鍵后再釋放鼠標(biāo)時啟用。③onRollOver):鼠標(biāo)移動到按鈕上時啟用。④onRollOut):鼠標(biāo)移出按鈕區(qū)域時啟用。555.6.3事件處理函數(shù)2.影片剪輯事件處理函數(shù)使用格式:影片剪輯的實例名稱.影片剪輯事件處理函數(shù)=function(){執(zhí)行的動作;}功能:執(zhí)行影片剪輯事件處理函數(shù)的腳本代碼;56常見的影片剪輯事件處理函數(shù)有以下幾種:①onLoad:影片剪輯被加載到目前時間軸時啟用。②onUnload):影片剪輯被刪除時啟用。③onEnterFrame:當(dāng)播放頭進(jìn)入影片剪輯所在的幀時啟用。④onMouseMove:當(dāng)移動鼠標(biāo)時啟用發(fā)。⑤onMouseDown:當(dāng)按下鼠標(biāo)左鍵時啟用。⑥onMouseUp:當(dāng)釋放鼠標(biāo)左鍵時啟用。影片剪輯還有一些與按鈕類似的事件處理函數(shù),常見的有以下幾種:①onPress:在影片剪輯上按下鼠標(biāo)左鍵時啟用。②onRelease:在影片剪輯上按下鼠標(biāo)左鍵后再釋放鼠標(biāo)時啟用。③onRollOver:鼠標(biāo)移動到影片剪輯上時啟用。④onRollOut:鼠標(biāo)移出影片剪輯時啟用。575.6.4getURL命令使用格式:getURL(url,windows)功能:實現(xiàn)獲取超鏈接命令;參數(shù)說明:(1)url:是一個字符串,表示文檔的URL。(2)windows:是一個可選的字符串,用來指定應(yīng)將文檔加載到其中的窗口或HTML框架。585.6.5loadMovie和unloadMovie命令1.loadMovie命令使用格式:loadMovie(url,target)功能:實現(xiàn)加載外部的SWF文件或圖片;參數(shù)說明:(1)url:要加載的SWF文件或圖片文件所在的路經(jīng)。(2)target:對影片剪輯對象的引用或表示目標(biāo)影片剪輯路徑的字符串。目標(biāo)影片剪輯將被加載的SWF文件或圖像所替換。59用法舉例:在同一目錄下要加載一個名為“my_mc.swf”的影片到主場景中??上戎谱饕粋€按鈕,并給該按鈕添加如下動作代碼:on(press){loadMovie("my_mc.swf",_root);}605.6.5loadMovie和unloadMovie命令2.unloadMovie命令使用格式:unloadMovie(target)功能:用來刪除用loadMovie命令加載的SWF文件或圖片;參數(shù)說明:target:要刪除的影片剪輯對象或表示要刪除的影片剪輯路徑的字符串。615.6.6starDrag和stopDrag命令1.starDrag命令使用格式:starDrag(traget,lock,left,top,right,bottom)功能:實現(xiàn)影片剪輯的拖動操作;參數(shù)說明:(1)traget:要拖動的影片剪輯的目標(biāo)路徑。(2)lock:(可選)一個布爾值,指定可拖動影片剪輯是鎖定到鼠標(biāo)位置中央(true),還是鎖定到用戶首次單擊該影片剪輯的位置上(false)。(3)left、top、right、bottom:(Number、可選)相對于該影片剪輯的父級的坐標(biāo)的值,用以指定該影片剪輯的約束矩形。622.stopDrag命令5.6.6starDrag和stopDrag命令使用格式:stopDrag()功能:該命令沒有任何參數(shù),停止當(dāng)前的拖動操作。用法舉例:在舞臺上制作一個影片剪輯,實例名稱為“my_mc”,選擇“my_mc”,所在的關(guān)鍵幀添加如下動作代碼:my_mc.onPress=function(){startDrag(my_mc,true);};my_mc.onRelease=function(){stopDrag();};635.6.7setProperty和getProperty命令1.setProperty命令1)使用格式:setProperty(traget,property,value)功能:用來設(shè)置影片剪輯的屬性。參數(shù)說明:(1)traget:要設(shè)置其屬性的影片剪輯的實例名稱的路徑。(2)property:要設(shè)置的屬性。(3)value:屬性的新的字面值,或者是計算結(jié)果為屬性新值的等式。642)用法舉例以下是setProperty命令的具體用法:setProperty("my_mc",_alpha,"55")
//設(shè)置影片剪輯“my_mc”的透明度為55%setProperty("my_mc",_xscale,200)
//設(shè)置影片剪輯“my_mc”水平放大一倍setProperty("my_mc",_visible,false)
//設(shè)置影片剪輯“my_mc”不可見setProperty("my_mc",_rotation,60)
//設(shè)置影片剪輯“my_mc”順時針旋轉(zhuǎn)60°655.6.7setProperty和getProperty命令2.getProperty命令使用格式:getProperty(my_mc,property)功能:用來獲取影片剪輯屬性的值。參數(shù)說明:(1)my_mc:要檢索其屬性的影片剪輯的實例名稱。(2)property:影片剪輯的一個屬性。66用法舉例:在舞臺上制作一個影片剪輯,實例名稱為“my_mc”,選擇“my_mc”所在的關(guān)鍵幀
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣西宏桂資本運(yùn)營集團(tuán)招聘面試題及答案
- 衛(wèi)星通信機(jī)務(wù)員安全強(qiáng)化水平考核試卷含答案
- 碳匯計量評估師變更管理知識考核試卷含答案
- 尾礦庫工藝監(jiān)督工復(fù)試評優(yōu)考核試卷含答案
- 有色金屬礦干燥工安全文化能力考核試卷含答案
- 工業(yè)車輛裝配調(diào)試工改進(jìn)模擬考核試卷含答案
- 增材制造設(shè)備操作員操作規(guī)范強(qiáng)化考核試卷含答案
- 焊絲鍍銅工安全規(guī)程競賽考核試卷含答案
- 昆蟲標(biāo)本采集制作工崗前跨界整合考核試卷含答案
- 2026屆云南省沾益縣第四中學(xué)高二上生物期末調(diào)研模擬試題含解析
- 2024北京廣播電視臺招聘30人筆試備考題庫及一套參考答案詳解
- DBJT15-85-2011 工程質(zhì)量安全監(jiān)督數(shù)據(jù)標(biāo)準(zhǔn)
- 金蝶新員工培訓(xùn)大綱
- 西梅栽培技術(shù)課件
- 小學(xué)生有擔(dān)當(dāng)教育課件
- 《村級防疫員管理辦法》
- 駕校消防安全責(zé)任制度
- 福祿貝爾教學(xué)課件
- 綠色建筑自評估報告參考樣式
- 牙隱裂的診斷及治療講課件
- 涉密文件解密管理制度
評論
0/150
提交評論