




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第7章 ActionScript特效Flash CC動畫制作案例教程教學PPT(簡單版)ActionScript 3.0基本語法鼠標事件FL影片播放控制鍵盤事件2 2 掌握ActionScript特效的添加方法,能夠為動畫添加特效。 掌握ActionScript3.0的基本語法,確保代碼能夠正確的編譯和運行。 掌握事件的添加方法,能夠通過相應事件控制動畫。學習目標3 3 目錄7.1ActionScript概述7.2【任務14】天氣預報動畫7.3【任務15】按鈕控制動畫效果4 4 1 1ActionScript概述概述2 2“動作動作”面板面板3 3添加添加ActionScript特效特效7.1
2、 ActionScript基礎知識4 4ActionScript3.0基本語法基本語法5 5 ActionScript是由Macromedia(現已被Adobe收購)為其Flash產品開發的 ,最初是一種簡單的腳本語言,經過ActionScript1.0和2.0的演變,現在最新版本是ActionScript3.0(簡稱“AS3.0”)。ActionScript3.0是一種完全的面向對象的編程語言,功能強大,基于國際化編程語言ECMAScript基礎之上做了進一步改進,其腳本編寫功能超越了ActionScript 的早期版本。1、 ActionScript概述概述7.1 ActionScript
3、基礎知識6 6 下面是ActionScript 3.0 中的新增功能。一個新增的ActionScript 虛擬機,稱為AVM2,它使用全新的字節代碼指令集,可使性能顯著提高。一個更為先進的編譯器代碼庫,可執行比早期編譯器版本更深入的優化。一個擴展并改進的應用程序編口 (API),擁有對對象的低級控制和真正意義上的面向對象的模型。一個基于 ECMAScript for XML (E4X) 規范(ECMA-357 第 2 版)的 XML API。E4X 是 ECMAScript 的一種語言擴展,它將 XML 添加為語言的本機數據類型。一個基于文檔對象模型 (DOM) 第3級事件規范的事件模型。1、
4、 ActionScript概述概述7.1 ActionScript基礎知識7 7 在Flash中,“動作”面板是專門用來編寫程序的窗口。執行“窗口動作”命令(或按【F9】鍵),即可打開“動作”面板。該面板主要分為4部分,如圖7-1所示。2、“動作動作”面板面板7.1 ActionScript基礎知識8 8 對“動作”面板中各部分的詳細介紹如下。腳本列表區腳本列表區該區域用于顯示當前已添加動作幀的項目列表,以及幀所在的場景。當單擊某個項目時,代碼編輯區會顯示相應的代碼,當未添加任何代碼時,該區域為空。代碼編輯區代碼編輯區在此區域可直接輸入ActionScript代碼,還可單擊右鍵,在彈出的菜單中
5、選擇“復制”、“粘貼”、“剪切”、“撤銷”以及“刪除”等命令。狀態欄狀態欄此區域用于顯示光標所在位置的行數和列數,以及代碼的總行數。工具欄工具欄工具欄中包含了創建代碼時常用的一些工具按鈕,下面來分別講解各工具的使用方法。2、“動作動作”面板面板7.1 ActionScript基礎知識9 9 “插入實例路徑和名稱”按鈕 :單擊此按鈕彈出“插入目標路徑”對話框,如圖7-2所示,在該對話框中可以選擇需添加動作腳本的對象。2、“動作動作”面板面板7.1 ActionScript基礎知識1010 “查找”按鈕 :單擊此按鈕可對代碼編輯區的動作腳本代碼進行查找和替換,如圖7-3所示。2、“動作動作”面板面
6、板7.1 ActionScript基礎知識1111 “設置代碼格式”按鈕 :用來調整代碼的格式,增強代碼的可讀性。“代碼片段”按鈕 :單擊該按鈕,彈出“代碼片段”面板,如圖7-4所示,若想通過該面板添加代碼,可展開左側的代碼文件夾,雙擊其中的某個項目,即可將代碼添加到代碼編輯區域。“幫助”按鈕 :單擊該按鈕可在瀏覽器中訪問ActionScript的在線幫助內容。2、“動作動作”面板面板7.1 ActionScript基礎知識1212 ActionScript特效的添加方法主要有兩種,一種是在幀上添加ActionScript特效,另一種是寫入類文件中,然后調用該類文件中的代碼。在幀上添加在幀上添
7、加ActionScript特效特效在 Flash CC中,ActionScript 3.0代碼可以添加到時間軸中的任何幀上,通常分為以下幾個步驟。選中需要添加ActionScript代碼的影片剪輯元件實例或按鈕元件實例。為實例命名,實例的名稱必須為英文且不能和元件名稱相同(具體可參照下面小節“變量”的命名原則)。打開“動作面板”添加需要的腳本代碼即可。添加完成后會在“時間軸面板”最上方生成一個存儲ActionScript代碼的新圖層。3、添加、添加ActionScript特效特效7.1 ActionScript基礎知識1313 ActionScript特效的添加方法主要有兩種,一種是在幀上添加
8、ActionScript特效,另一種是寫入類文件中,然后調用該類文件中的代碼。在幀上添加在幀上添加ActionScript特效特效1)在 Flash CC中,ActionScript 3.0代碼可以添加到時間軸中的任何幀上,通常分為以下幾個步驟。2)選中需要添加ActionScript代碼的影片剪輯元件實例或按鈕元件實例。3)為實例命名,實例的名稱必須為英文且不能和元件名稱相同(具體可參照下面小節“變量”的命名原則)。4)打開“動作面板”添加需要的腳本代碼即可。添加完成后會在“時間軸面板”最上方生成一個存儲ActionScript代碼的新圖層。3、添加、添加ActionScript特效特效7.
9、1 ActionScript基礎知識1414 3、添加、添加ActionScript特效特效7.1 ActionScript基礎知識1515 3、添加、添加ActionScript特效特效7.1 ActionScript基礎知識4)返回到后綴名為.fla文件中,代第1幀上輸入如下代碼。即可將ActionScript特效添加到當前動畫中。include”XXXX.as”在上面的代碼中,XXXX.as為之前命名的源文件,該文件要和動畫的fla文件在同一層級的目錄下。1616 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識任何一門編程語言在編寫代碼時都要
10、遵循一定的規則,這個規則就是語法。只有使用正確的語法來創建語句,才能使代碼正確的編譯和運行。下面就針對ActionScript 3.0的基本語法進行具體講解。1717 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識點語法點語法 在ActionScript 3.0中,“.”運算符提供了對對象的屬性和方法的訪問。“.”運算符表達式以影片或對象的名稱開始,中間為“.”運算符,結尾為要訪問的屬性或方法。 具體語法格式如下: 對象.屬性 對象.方法() 例如,要定義影片剪輯元件實例my_mc在舞臺上的x軸位置,就可以寫為my_mc.x,其中“x”表示影片剪輯
11、元件在舞臺上的x軸位置。 “.”運算符的另一個作用是相當于路徑。例如,submit是名稱為form的影片剪輯中設置的變量,該影片剪輯實例又嵌套在名稱為shoppingCart的影片中,則表達式shoppingCart.form.submit=true意為將form中的submit變量設置為true。1818 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識標點符號標點符號1)分號分號“;”通常用來終止語句,ActionScript 3.0的語句以分號字符結束。例如:var a:int = 2; var b:int = 3;值得一提的是,使用分號終止語
12、句可使單個行中放置不止一條語句,但這樣會使代碼難以閱讀。1919 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識標點符號標點符號2)逗號逗號“,”主要用于分割參數,如函數的參數和方法的參數等。例如:trace(1,2,3);在上面的示例代碼中,“trace”意為“輸出”,按【Ctrl+Enter】組合鍵即可將腳本代碼的運行結果,展示到“輸出面板”上,如圖7-6所示。2020 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識標點符號標點符號3)冒號冒號“:”主要用于為變量指定數據類型。要為一個變量指定數據類
13、型需要使用var關鍵字和后面加冒號的方法為其指定。例如:var a:int;在上面的示例代碼中,表示將變量a制定為整數(int)類型。2121 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識標點符號標點符號4)小括號小括號在 ActionScript 3.0 中,可以通過三種方式來使用小括號“( ) ”。 在數學運算方面,可以使用小括號來更改表達式中的運算順序,組合到小括號中的運算總是最先執行。 例如:trace(2 + 3 * 4); trace(2 + 3) * 4);在上述代碼中,第一行輸出的結果為14,第二行輸出的結果為20。2222 4、
14、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識標點符號標點符號4)小括號小括號在表達式運算方面,可以結合使用小括號和逗號運算符“,”,優先計算一系列表達式的結果,并返回最后一個表達式的結果。例如:var c:int = 2; var d:int = 3;trace(c+d)*c,c*d);在上述代碼中,輸出結果為10和6可以使用小括號來向函數或方法傳遞一個或多個參數。例如:trace(hello);2323 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識5)中括號中括號中括號“”主要用于數組的定義和訪問。例
15、如:var arr:Array = 1,2,3; 6)大括號大括號大括號“”又稱“花括號”,主要用于編程語言的程序控制、函數和類中,在構成控制結構的每個語句前后添加大括號,對代碼進行分塊處理。例如:var i:int;if(i=1)trace(i);在上面的示例代碼中,用于制定滿足條件后需要執行的語句。2424 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識5)注釋注釋注釋是使用一些簡單易懂的語言對代碼進行解釋,在ActionScript 3.0中可添加兩種類型的注釋,分別為單行注釋和多行注釋。1)單行注釋:以兩個正斜杠字符“/”開頭,后面的都為注
16、釋文本。例如:trace(“123”);/輸出:1232)多行注釋:以一個正斜杠和一個星號“/*”開頭,以一個星號和一個正斜杠“*/”結尾。例如:/*這是一個可以跨行的多行注釋*/2525 4、ActionScript 3.0基本語法基本語法7.1 ActionScript基礎知識字母字母大小寫大小寫ActionScript 3.0是一種區分大小寫的語言,大小寫不同的標識符會被視為不同。例如,下面的代碼用于創建兩個不同的變量。var num1:int; var Num1:int;保留字與關鍵字保留字與關鍵字“保留字”是一些單詞,只能由ActionScript 3.0使用,不能在代碼中將它們用作
17、標識符,否則編譯器會報錯,關鍵字屬于保留字。在ActionScript 3.0中,保留字分為三類,分別為詞匯關鍵字、句法關鍵字和供將來使用的保留字。1)詞匯詞匯關鍵字關鍵字詞匯關鍵字是ActionScript 3.0編程語言中作為關鍵字使用的,具體如表7-1所示。2626 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識句法關鍵字可用作標識符,但是在某些上下文中具有特殊的含義,具體如表7-2所示。eachgetsetnamespaceincludedynamicfinalnativeoverridestatic 2727 4、ActionScript 3.0
18、基本語法7.1 ActionScript基礎知識供將來使用的保留字供將來使用的保留字這些標識符不是為ActionScript 3.0保留的,但是其中的一些可能會被采用ActionScript 3.0 的軟件視為關鍵字。可以在代碼中使用其中的標識符,但是建議不要使用這些標識符,因為它們可能在未來版本的語言中作為關鍵字,具體如表7-3所示。abstractbooleanbytecastchardebuggerdoubleenumexportfloatgotointrinsiclongprototypeshortsynchronizedthrowstotransienttypevirtualvola
19、tile 2828 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識1)變量變量變量是程序編輯中重要的組成部分,用于對所需的數據資料進行暫時存儲。當對變量進行操作時,變量的值就會發生改變,下面就針對變量的相關知識進行詳細講解。2)變量變量名名變量名通常是一個單詞或幾個單詞構成的字符串,也可以是一個字母。為變量命名時要盡可能地為其指定一個有意義的名稱,變量命名規則如下。必須以字母或下劃線開頭,中間可以是數字、字母或下劃線。變量名不能包含空格。不能使用ActionScript 3.0中的關鍵字作為變量名。在它的作用范圍內必須是唯一的。2929 4、ActionS
20、cript 3.0基本語法7.1 ActionScript基礎知識變量的數據類型變量的數據類型ActionScript 3.0中的數據類型分為兩類,分別為簡單數據類型(Boolean、Int、Null、Number、String、Uint )和復雜數據類型(Void、Object、Array、MovieClip)BooleanBoolean 代表布爾型,是一個用來表示真假的數據類型,包含兩個值:true 和 false。對于 Boolean 類型的變量,其它任何值都是無效的。如果聲明了一個Boolean型的變量但是沒有給它賦值那么這個變量的值默認為false。Int、Number和和Uint這
21、三個變量均是針對數字進行取值的,其中Int代表32位有符號整數,Number代表整數、無符號整數、浮點數,Uint代表32位無符號整數,雖然這三個變量均是針對數字進行取值,但在取值范圍上會有所差異,在使用時需注意以下幾點。3030 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識a)如果定義的變量不使用小數,那么使用Int數據類型代替Number數據類型會更快更高效。b)若只處理正整數或與顏色相關的數值時,應優先使用Uintc)若處理整數值時,可使用Int和Uint,若整數值有正、負之分,則使用Int。d)若處理涉及小數點的數值,應使用Number。3131
22、 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識NullNull 數據類型為空型,僅包含一個值:null。這意味著沒有值,即缺少數據。在很多情況下,null可以指定某個屬性或變量尚未賦值。StringString 代表字符串型,該數據類型表示一個16 位字符的序列,可以由字母、數字和符號組成。用 String 數據類型聲明的變量的默認值是 null。為該變量類型賦值時,應在值的前后增加英文雙引號或單引號。VoidVoid 數據類型僅包含一個值:undefined。它主要是用來在函數定義中,指示函數不返回值。ObjectObject數據類型是一系列屬性或方法
23、的集合,并將該屬性或方法應用于指定的對象。ActionScript 3.0 中的 Object 數據類型與早期版本中的 Object 數據類型存在以下三方面的區別。3232 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識a)Object 數據類型不再是指定給沒有類型注釋的變量的默認數據類型。b)Object 數據類型不再包括 undefined 這一值。c)在 ActionScript 3.0 中,Object 類實例的默認值是 null。定義Object類型對象的具體方法如下。var obj1: Object=new Object();/新建一個空對象v
24、ar obj2: Object=;/新建一個空對象,大括號內可直接寫入自定義的屬性或方法。3333 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識a)Object 數據類型不再是指定給沒有類型注釋的變量的默認數據類型。b)Object 數據類型不再包括 undefined 這一值。c)在 ActionScript 3.0 中,Object 類實例的默認值是 null。定義Object類型對象的具體方法如下。var obj1: Object=new Object();/新建一個空對象var obj2: Object=;/新建一個空對象,大括號內可直接寫入自定
25、義的屬性或方法。3434 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識ArrayArray是ActionScript中非常常用的變量類型,稱為數組變量類型。在編程的過程中,為了存儲具有共同特性的變量,可使用數組進行存儲。聲明數組的方式如下。var aa: Array=new Array();或:var aa: Array= Array;MovieClipMovieClip即影片剪輯,它是Flash中可以播放動畫的元件,并且也是一個數據類型,被認為是構成Flash應用的最核心元素。3535 4、ActionScript 3.0基本語法7.1 ActionS
26、cript基礎知識ArrayArray是ActionScript中非常常用的變量類型,稱為數組變量類型。在編程的過程中,為了存儲具有共同特性的變量,可使用數組進行存儲。聲明數組的方式如下。var aa: Array=new Array();或:var aa: Array= Array;MovieClipMovieClip即影片剪輯,它是Flash中可以播放動畫的元件,并且也是一個數據類型,被認為是構成Flash應用的最核心元素。3636 4、ActionScript 3.0基本語法7.1 ActionScript基礎知識常量常量常量是指固定不變的量,是一種特殊的變量。 ActionScript
27、 3.0 中增加了const關鍵字,用來創建常量,在創建常量的同時,需為常量進行賦值,常量的創建格式如下。const 常量名:數據類型=常量值;定義常量時只能為常量賦值一次。3737 1 1知識儲備知識儲備2 2任務分析任務分析7.2 【任務14】天氣預報動畫3 3任務實現任務實現3838 運算符運算符運算符是一種特殊的函數,通常具有一個或多個操作數并返回相應的值。操作數是運算符用作輸入的值(通常為字面值、變量或表達式)。ActionScript 3.0 中的運算符主要包括算數運算符、邏輯運算符、關系運算符、位運算符、賦值運算符、和條件運算符等,具體介紹如下。1 1)算數)算數運算符運算符算術
28、運算符用于連接運算表達式,主要包括加“+”、減“”、乘“*”、除“/”、取模“%”、自增“+”、自減“”等運算符,常用的算術運算符如表7-4所示。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫3939 運算符運算符1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫算術運算符描述+加運算符減運算符*乘運算符/除運算符%取余數+自增運算符。該運算符有i+(在使用i之后,使i的值加1)和+i(在使用i之前,先使i的值加1)兩種自減運算符。該運算符有i-(在使用i之后,使i的值減1)和-i(在使用i之前,先使i的值減1)兩種4040 運算符運算符1、 知識儲備知識儲備7.2 【任務14】天
29、氣預報動畫例如:var a:Number=2;var b:Number=3;trace(a+b);trace(a-b);trace(a*b);trace(a/b);trace(a%b);a-;trace(a);b+;trace(b);按【Ctrl+Enter】組合鍵測試影片后,“輸出”面板的結果如圖7-7所示。4141 運算符運算符1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫4242 邏輯運算邏輯運算符符邏輯運算符是根據表達式的值來返回真值或是假值。ActionScript 3.0支持常用的邏輯運算符,具體如表7-5所示。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫邏輯運算
30、符描述&邏輯與,只有當兩個操作數a、b的值都為true時,a&b的值才為true;否則為false|邏輯或,只有當兩個操作數a、b的值都為false時,a|b的值才為false;否則為true!邏輯非,!true的值為false,而!false的值為true4343 位運算符位運算符位運算符是供數字進行快速、低階運算的字符,ActionScript 3.0中共有7個位運算符,具體如表7-7所示。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫位運算符描述&按位與|按位或按位異或 位右移 位無符號右移4444 賦值運算符賦值運算符賦值運算符用于對變量或常量進行賦值,
31、以此來提高代碼的執行效率。常用的賦值運算符如表7-8所示。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫賦值運算符描述=將右邊表達式的值賦給左邊的變量。例如,username=“name”+ =將運算符左邊的變量加上右邊表達式的值賦給左邊的變量。例如,a+=b,相當于a=a+b- =將運算符左邊的變量減去右邊表達式的值賦給左邊的變量。例如,a-=b,相當于a=a-b*=將運算符左邊的變量乘以右邊表達式的值賦給左邊的變量。例如,a*=b,相當于a=a*b/ =將運算符左邊的變量除以右邊表達式的值賦給左邊的變量。例如,a/=b,相當于a=a/b% =將運算符左邊的變量用右邊表達式的值求模,
32、并將結果賦給左邊的變量。例如,a%=b,相當于a=a%b4545 條件運算符條件運算符條件運算符是一個三元運算符,其語法格式如下:條件表達式?表達式1:表達式2若條件表達式的值為true,則執行“表達式1”,否則執行“表達式2”。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫4646 表達式表達式運算符與運算對象的組合稱為表達式。表達式的值可以是任何有效的ActionScript數據類型,如boolean、number、string或者object等。一個表達式本身可以很簡單,如一個數字或者變量。另外,它還可以包含許多連接在一起的變量關鍵字以及運算符。流程控制語句流程控制語句語句是在運
33、行時執行或指定動作的語言基礎,在ActionScript 3.0中常用的流程控制語句有條件語句和循環語句。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫4747 1)if條件判斷語句條件判斷語句if條件語句是最基本、最常用的條件控制語句。通過判斷條件表達式的值為true或者false,來確定是否執行某一條語句。主要包括單向判斷語句、雙向判斷語句和多向判斷語句,具體講解如下。單向判斷語句單向判斷語句是結構最簡單的條件語句,如果程序中存在絕對不執行某些指令的情況,就可以使用單向判斷語句,其語法格式如下:if(執行條件)執行語句 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫4848
34、 在上面的語法結構中,if可以理解為“如果”,小括號“()”內用于指定if語句中的執行條件,大括號“”內用于指定滿足執行條件后需要執行的語句。單向判斷語句的執行流程如圖7-8所示。1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫4949 2)雙向雙向判斷語句判斷語句雙向判斷語句是if條件語句的基礎形式,只是在單向判斷語句基礎上增加了一個從句,其基本語法格式如下:if(執行條件)執行語句1 else執行語句2雙向判斷語句的語法格式和單向判斷語句類似,只是在其基礎上增加了一個else從句。表示如果條件成立則執行“語句1”,否則,則執行“語句2”。1、 知識儲備知識儲備7.2 【任務14】天氣
35、預報動畫5050 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫雙向判斷語句的執行流程如圖7-9所示。5151 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫3)多向多向判斷語句判斷語句多向判斷語句是根據表達式的結果判斷一個條件,然后根據返回值做進一步的判斷,其基本語法格式如下:if(執行條件1)執行語句1 else if(執行條件2)執行語句2else if(執行條件3)執行語句3.在多向判斷語句的語法中,通過else if語句可以對多個條件進行判斷,并且根據判斷的結果執行相關的語句。5252 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫多向判斷語句的執行流程如圖7
36、-10所示。5353 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫switch語句語句switch語句是典型的多路分支語句,其作用與if語句類似,但比if語句更具有可讀性和靈活性。另外,switch語句允許在找不到匹配條件的情況下執行默認的一組語句。其基本語法格式如下:5454 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫switch (表達式)case 目標值1:執行語句1break;case 目標值2:執行語句2break;case 目標值n:執行語句nbreak;default:執行語句n+1break;5555 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫
37、在上面的語法結構中,switch語句將表達式的值與每個case中的目標值進行匹配,如果找到了匹配的值,就執行case后對應的執行語句,如果沒找到任何匹配的值,就執行default后的執行語句。5656 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫for循環循環for 循環用于循環訪問某個變量以獲得特定范圍的值。必須在 for 語句中提供3個表達式:一個設置了初始值的變量,一個用于確定循環何時結束的條件語句,以及一個在每次循環中都更改變量值的表達式。for循環語句也稱為計次循環語句,一般用于循環次數已知的情況,其基本語法格式如下:for(初始化表達式; 循環條件; 操作表達式)循環體語
38、句;在上面的語法結構中,for關鍵字后面()中包括了三部分內容:初始化表達式、循環條件和操作表達式,它們之間用“;”分隔,中的執行語句為循環體。5757 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫for循環循環接下來分別用表示初始化表達式、表示循環條件、表示操作表達式、表示循環體,通過序號來具體分析for循環的執行流程。具體如下:for( ; ; )第一步,執行第二步,執行,如果判斷結果為true,執行第三步,如果判斷結果為false,執行第五步第三步,執行第四步,執行,然后重復執行第二步第五步,退出循環5858 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫while 循
39、環循環while語句是最基本的循環語句,其基本語法格式如下:while(循環條件)循環體語句;在上面的語法結構中,中的執行語句被稱作循環體,循環體是否執行取決于循環條件。當循環條件為true時,就會執行循環體。循環體執行完畢時會繼續判斷循環條件,如條件仍為true則會繼續執行,直到循環條件為false時,整個循環過程才會結束。while循環語句的執行流程如圖7-11所示。5959 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫6060 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫dowhile循環循環dowhile循環語句也稱為后測試循環語句,它也是利用一個條件來控制是否要繼
40、續執行該語句,其基本語法格式如下:do 循環體語句; while(循環條件);在上面的語法結構中,關鍵字do后面中的執行語句是循環體。dowhile循環語句將循環條件放在了循環體的后面。這也就意味著,循環體會無條件執行一次,然后再根據循環條件來決定是否繼續執行。dowhile循環的執行流程如圖7-12所示。6161 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫6262 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫影片影片播放控制播放控制在Flash中,控制影片播放流程的命令有許多,常用命令如下所示:1)stop:使影片停止在當前時間軸的當前幀中。2)play:使影片從當前幀
41、開始繼續播放。 3)gotoAndStop:跳轉到用幀標簽或幀編號指定的某一特定幀并停止。4)gotoAndPlay:跳轉到用幀標簽或幀編號指定的某一特定幀并繼續播放。5)nextFrame:使影片轉到下一幀并停止。6363 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫對象對象的基本屬性的基本屬性在舞臺上看到的顯示對象都有它們各自的屬性,如位置、大小、透明度等。只有掌握了對象的基本屬性,才能夠通過腳本代碼對舞臺對象的設置。其中常用的對象屬性如表7-9所示。6464 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫屬性含義x橫坐標y縱坐標width寬度height高度scaleX
42、橫向縮放比例scaleY縱向縮放比例mouseX鼠標相對于當前顯示對象注冊點之間的水平距離mouseY鼠標相對于當前顯示對象注冊點之間的垂直距離rotation旋轉角度 alpha不透明度 mask遮罩stage舞臺6565 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫添加和刪除顯示對象添加和刪除顯示對象對象只有放置在舞臺上才能表現出要實現的效果,這里的舞臺可以被稱作為容器,主要用來存儲和顯示要顯示的對象。使用到的方法如表7-10所示。注意:注意:當在舞臺上添加任何可視元素時,該元素會成為stage對象的子級。方法含義addChild()添加顯示對象removeChild()刪除顯示
43、對象6666 1、 知識儲備知識儲備7.2 【任務14】天氣預報動畫隨機數隨機數隨機數在Flash中的應用非常廣泛。在ActionScript 3.0中,使用Math對象的random方法,即Math.random()產生隨機數。該方法用于返回一個大于或等于0并且小于1的隨機浮點數。例如:trace(Math.random()*10+1)上述語句用于輸出一個111之間的隨機數。6767 2、 任務分析任務分析7.2 【任務14】天氣預報動畫在制作天氣預報動畫時,可以從動畫的背景、動畫效果和文字內容等方面進行分析。1)動畫動畫背景背景本動畫的主題為天氣預報,可選用一張風景素材圖片充當背景。2)動
44、畫動畫效果效果由于本任務為制作下雨效果動畫,因此需展現出單個雨滴的動畫效果進而實現整個畫面的動畫效果。單個雨滴動畫:通過線條工具和橢圓工具繪制圖形,然后創建傳統補間動畫。整個畫面動畫:繪制好單個雨滴的動畫效果后,通過代碼實現整個畫面的下雨效果。3)文字文字內容內容通過文本工具添加文字內容,并通過屬性面板設置文字的顯示樣式。6868 3、任務實現、任務實現7.2 【任務14】天氣預報動畫6969 1 1知識儲備知識儲備2 2任務分析任務分析7.3 【任務15】按鈕控制動畫效果3 3任務實現任務實現7070 函數函數在ActionScript程序編寫中,經常會遇到需要多次重復操作的情況,這時就需要
45、重復書寫相同的代碼,這樣不僅加重了開發人員的工作量,而且增加了代碼后期維護的困難。為此,ActionScript提供了函數,函數的準確定義為執行特定任務,并可以在程序中重用的代碼塊。下面,將針對函數的相關知識進行講解。1)函數函數的定義的定義在ActionScript 3.0中有兩種定義函數的方法,分別為函數語句定義法和函數表達式定義法。1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7171 函數函數語句定義法語句定義法函數語句定義法是程序語言中基本類似的定義方法,通常使用關鍵字function來定義,其語法格式如下所示。function 函數名 (參數1:參數類型,參數2:參數類
46、型):返回類型函數體1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7272 對上述語法格式的解釋如下:a) function:在聲明函數時必須使用的關鍵字,以小寫字母開頭。b) 函數名:定義函數的名稱。 c) 小括號:定義函數必須的格式,小括號內的參數和參數類型都可選。d) 參數1/參數2:代表外界傳遞給函數的值。e) 返回類型:定義函數的返回類型也是可選的,冒號和返回類型必須成對出現。f)大括號:定義函數的必須格式,要成對出現,括起來的是函數定義的程序內容,是調用函數時執行的代碼。g) 函數體:指在函數運行時的執行語句。1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7
47、373 函數表達式定義法函數表達式定義法定義函數的第二種方法就是結合使用賦值語句和函數表達式,函數表達式有時也稱為函數字面值或匿名函數。這是一種較為繁雜的方法,在早期的 ActionScript 版本中廣為使用。其語法格式如下所示。var 函數名:Function=function(參數1:參數類型,參數2:參數類型):返回類型函數體1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7474 對上述語法格式的解釋如下:a)var:定義函數的關鍵字,以小寫字母開頭。b)Function:指示定義數據類型是Function類,開頭字母需大寫。c)=:賦值運算符。d)function:定義函
48、數的關鍵字,指明定義的是函數。對于上述兩種方法,推薦使用函數語句定義法,除非在特殊情況下要求使用表達式。函數語句較為簡潔,而且與函數表達式相比,更有助于保持嚴格模式和標準模式的一致性。1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7575 2)函數函數的調用的調用函數定義后并不會自動執行,而是需要在特定的位置調用函數,函數的功能才能夠實現。對于沒有參數的函數,可以直接使用該函數的名字后跟小括號來調用。例如:function NIHAO()trace(你好!)NIHAO();在上面的示例代碼中,定義了一個函數名為“NIHAO”的函數,用于輸出“你好”,然后通過“NIHAO();”調用
49、該函數,代碼運行后的輸出結果如圖7-21所示。1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7676 1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放7777 1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放鼠標事件鼠標事件鼠標事件是指通過鼠標動作觸發的事件。在ActionScript 3.0中統一使用MouseEvent類來管理鼠標事件,表7-11中列舉出了幾種常見的鼠標事件。事件含義CLICK定義鼠標單擊事件DOUBLE_ CLICK定義鼠標雙擊事件MOUSE_DOWN定義鼠標按下事件MOUSE_MOVE定義鼠標移動事件MOUSE_OUT定義鼠標移出事件MO
50、USE_OVER定義鼠標移過事件MOUSE_UP定義鼠標抬起事件MOUSE_WHEEL定義鼠標滾輪滾動事件ROLL_OUT定義鼠標滑入事件ROLL_OVER定義鼠標滑出事件7878 1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放鼠標事件鼠標事件鼠標事件是指通過鼠標動作觸發的事件。在ActionScript 3.0中統一使用MouseEvent類來管理鼠標事件,表7-11中列舉出了幾種常見的鼠標事件。事件含義CLICK定義鼠標單擊事件DOUBLE_ CLICK定義鼠標雙擊事件MOUSE_DOWN定義鼠標按下事件MOUSE_MOVE定義鼠標移動事件MOUSE_OUT定義鼠標移出事件MO
51、USE_OVER定義鼠標移過事件MOUSE_UP定義鼠標抬起事件MOUSE_WHEEL定義鼠標滾輪滾動事件ROLL_OUT定義鼠標滑入事件ROLL_OVER定義鼠標滑出事件7979 1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放若要在類中定義鼠標事件,則需引入(import)Flash.events.MouseEvent類。添加鼠標事件的基本語法如下。/在事件目標上注冊偵聽器函數事件添加者.addEventListener(MouseEvent.鼠標事件,事件名稱);/創建事件偵聽函數function 事件名稱(事件: MouseEvent):void要執行的代碼8080 1、 知識儲備知識儲備7.3 【任務15】按鈕控制動畫播放對上述語法格式的解釋如下:a)事件添加者:添加事件的目標對象,也就是按鈕或影片剪輯實例的名稱。b)addEventListener():用于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 籃球球場整修方案范本
- 河道清淤采砂施工方案
- 重慶科技學院《大學英語Ⅲ》2023-2024學年第二學期期末試卷
- 水泥構件銷售方案范本
- 鎮江市高等專科學校《中學數學現代教育技術》2023-2024學年第二學期期末試卷
- 山東藝術學院《實證會計研究入門》2023-2024學年第二學期期末試卷
- 寧波大學科學技術學院《藥劑學Ⅱ》2023-2024學年第二學期期末試卷
- 廊坊師范學院《植物生殖生物學》2023-2024學年第二學期期末試卷
- 中南林業科技大學《葡萄與葡萄酒》2023-2024學年第二學期期末試卷
- 江蘇衛生健康職業學院《制圖》2023-2024學年第二學期期末試卷
- 國企外聘合同范本
- 大學生職業素養(職業素養指導課程)全套教學課件
- 醫院培訓課件:《血管超聲在通路中的應用》
- 2024年職業技能測試題庫500道附答案【黃金題型】
- 吊籃安裝計算書
- 復習-Python初中信息技術
- 35KV電纜入地綜合項目工程綜合項目施工組織設計
- 園林工程課件
- 中國MEMS流量傳感器行業市場現狀分析及競爭格局與投資發展研究報告2024-2029版
- 癌癥患者的放療護理與副作用管理
- 2021年面試評估表及評估標準
評論
0/150
提交評論