版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第六章 動(dòng)作腳本入門,第六章 動(dòng)作腳本入門,第一節(jié) 【動(dòng)作】面板的使用方法 1【動(dòng)作】面板的組成 2管理影片文件中的動(dòng)作腳本 第二節(jié) 變量、函數(shù)與語(yǔ)法規(guī)范 1常 量 2變 量 3函 數(shù) 4語(yǔ)法規(guī)范 第三節(jié) 事件和事件處理函數(shù) 1事件分類及處理事件的方法 2針對(duì)按鈕對(duì)象的on()事件處理函數(shù) 3事件處理函數(shù)方法 4事件偵聽器 5按鈕事件和影片剪輯事件 第四節(jié) 基本命令和程序結(jié)構(gòu)控制 1時(shí)間軸控制命令 2瀏覽器和網(wǎng)絡(luò)控制命令 3程序流程結(jié)構(gòu)控制 4常用對(duì)象簡(jiǎn)介,第一節(jié)【動(dòng)作】面板的使用方法,1.【動(dòng)作】面板的組成,【動(dòng)作】面板,腳本輸入?yún)^(qū),腳本導(dǎo)航器,動(dòng)作工具箱,功能按鈕,2.管理影片文件中的動(dòng)作
2、腳本 添加動(dòng)作腳本,添加on動(dòng)作,完成的動(dòng)作腳本,固定動(dòng)作腳本 關(guān)于代碼提示,被固定的腳本標(biāo)簽,代碼提示,檢查語(yǔ)法和標(biāo)點(diǎn) 要徹底弄清你編寫的代碼是否能像預(yù)期的那樣運(yùn)行,需要發(fā)布或測(cè)試文件。不過(guò),你可以不必退出 FLA 文件就迅速檢查動(dòng)作腳本代碼。語(yǔ)法錯(cuò)誤列在【輸出】面板中。你還可以檢查代碼塊兩邊的小括號(hào)、大括號(hào)或中括號(hào)(數(shù)組訪問運(yùn)算符)是否齊全。 在【動(dòng)作】面板中,可以用以下3種方法檢查語(yǔ)法:,單擊“腳本窗口”上方的【語(yǔ)法檢查】按鈕,在【動(dòng)作】面板中,單擊右上角的按鈕。,在【動(dòng)作】面板中,單擊右上角的按鈕 ,在彈出的菜單中選擇【語(yǔ)法檢查】命令。,第二節(jié) 變量、函數(shù)與語(yǔ)法規(guī)范,1. 常 量 常量
3、就是一種屬性,是指在程序運(yùn)行中不會(huì)改變的量。例如上面程序代碼中的數(shù)值3、7、8和字符串“Flash MX 2004 ActionScript”都是常量。邏輯常量True(真)和False(假)在編程的時(shí)候也會(huì)經(jīng)常被用到。 2. 變 量 變量命名與命名規(guī)則 變量名必須符合以下原則: 變量的名稱必須以英文字母開頭。 變量的名稱中間不能有空格,像box sum這個(gè)就是一個(gè)錯(cuò)誤的示范。如果想用兩個(gè)單詞以上的單字來(lái)命名變量,可以在名稱中間加上下劃線符號(hào),如:box_sum。 變量的名稱中不能使用除了“_”(下劃線)以外的符號(hào)。 不能使用與命令(關(guān)鍵字)相同的名稱,例如,“var”、“new”等,以免程序
4、出現(xiàn)錯(cuò)誤。 變量的名稱最好能達(dá)到“見名知意”的效果,盡量使用有意義的名稱,而避免使用諸如a_1、x、z001之類意義不明的名稱。,聲明和使用變量 使用變量前,最好使用var先加以聲明。在聲明變量的時(shí)候,一般要注意以下內(nèi)容 要聲明常規(guī)變量,可使用Set Varible動(dòng)作或賦值運(yùn)算符(=),這兩種方法獲得的結(jié)果是一樣的。 要聲明本地變量,可以在函數(shù)主體內(nèi)使用var語(yǔ)句。 要聲明全局變量,可以在變量名前面使用_global標(biāo)識(shí)符。 要測(cè)試變量的值,可以使用trace動(dòng)作將變量的值發(fā)送到【輸出】面板。,3. 函 數(shù) 系統(tǒng)函數(shù),Boolean:轉(zhuǎn)換函數(shù),將參數(shù)轉(zhuǎn)換為布爾類型。 GetVersion:獲
5、取Flash Play的版本號(hào)。 ParseInt:數(shù)學(xué)函數(shù),將字符串轉(zhuǎn)換為整數(shù)。 Escape:將參數(shù)轉(zhuǎn)換為字符串,并以URL編碼格式進(jìn)行編碼,在這種格式中,將所有非字母數(shù)字的字符都轉(zhuǎn)義為十六進(jìn)制序列(這個(gè)序列以%開頭)。,IsFinite:數(shù)學(xué)函數(shù),測(cè)試某數(shù)字是否為有限數(shù)。 String:將數(shù)字轉(zhuǎn)換為字符串類型。 Eval:按照名稱訪問變量、屬性、對(duì)象或影片剪輯。如果函數(shù)參數(shù)是變量或?qū)傩裕瑒t返回該變量或?qū)傩缘闹?。如果函?shù)參數(shù)是對(duì)象或影片剪輯,則返回指向該對(duì)象或影片剪輯的引用。如果無(wú)法找到函數(shù)參數(shù)中指定的元素,則返回 undefined。 IsNN:數(shù)學(xué)函數(shù),測(cè)試某數(shù)字是否為NaN(不是一個(gè)
6、數(shù)字)。 TargetPath:返回指定影片剪輯的目標(biāo)路徑字符串。 Getproperty:返回指定影片剪輯的屬性。 Number:轉(zhuǎn)換函數(shù),將函數(shù)參數(shù)轉(zhuǎn)換為數(shù)據(jù)類型。 Unescape:返回對(duì)URL編碼的參數(shù)進(jìn)行解碼所得到的字符串。 GetTimer:返回影片開始播放以來(lái)經(jīng)過(guò)的毫秒數(shù)。 ParseFlost:數(shù)學(xué)函數(shù),將字符串分析為浮點(diǎn)數(shù)。 Object:轉(zhuǎn)換函數(shù),將參數(shù)轉(zhuǎn)換為相應(yīng)的對(duì)象類型。 Array:函數(shù)根據(jù)參數(shù)構(gòu)造數(shù)組,自定義函數(shù) 4.語(yǔ)法規(guī)范 關(guān)鍵字,關(guān)鍵字列表,運(yùn)算符 運(yùn)算符指定如何合并、比較或修改表達(dá)式中值的字符。也就是說(shuō)通過(guò)運(yùn)算來(lái)改變變量的值。 邏輯運(yùn)算符:”結(jié)束。長(zhǎng)語(yǔ)句允許
7、分多行書寫,即允許將一條很長(zhǎng)語(yǔ)句分割成兩個(gè)或更多代碼行,只要在結(jié)尾有個(gè)分號(hào)就行了。 字符串不能跨行,即兩個(gè)分號(hào)必須在同一行。 雙斜杠后面是注釋,在程序中不參與執(zhí)行,用于增強(qiáng)程序的可讀性。 ActionScript是區(qū)分大小寫字母的。,第三節(jié) 事件和事件處理函數(shù),1.事件分類及處理事件的方法 Flash中的事件包括用戶事件和系統(tǒng)事件兩類。用戶事件是指用戶直接交互操作而產(chǎn)生的事件。例如鼠標(biāo)單擊或按下鍵盤鍵之類的事件。系統(tǒng)事件是指Flash Player自動(dòng)生成的事件,它不是由用戶直接生成的。例如影片剪輯在舞臺(tái)上第一次出現(xiàn)或播放頭經(jīng)過(guò)某個(gè)關(guān)鍵幀。一般情況下,在以下幾種情況下會(huì)產(chǎn)生事件: 當(dāng)在時(shí)間軸上
8、播放到某一幀時(shí)。 當(dāng)某個(gè)影片剪輯載入或卸載時(shí)。 當(dāng)單擊某個(gè)按鈕或按下鍵盤上的某個(gè)鍵時(shí)。 為使應(yīng)用程序能夠?qū)κ录龀龇磻?yīng),必須編寫相應(yīng)的事件處理程序。事件處理程序是與特定對(duì)象和事件關(guān)聯(lián)的動(dòng)作腳本代碼。例如,當(dāng)用戶單擊舞臺(tái)上的一個(gè)按鈕時(shí),可以將播放頭前進(jìn)到下一幀。 Flash MX 2004提供了三種編寫事件處理程序的方法: 針對(duì)對(duì)象的on()事件處理函數(shù) 事件處理函數(shù)方法 事件偵聽器 下面我們就以按鈕對(duì)象的事件為例,討論這三種編寫事件處理程序方法的應(yīng)用。,2針對(duì)按鈕對(duì)象的on()事件處理函數(shù) 打開小球跳動(dòng)動(dòng)畫文件 引用按鈕實(shí)例 定義按鈕的動(dòng)作腳本,引用按鈕,3.事件處理函數(shù)方法 定義按鈕實(shí)例名稱
9、 按照前面的方法,將配套光盤上的小球跳動(dòng)動(dòng)畫文件打開,并且引用兩個(gè)按鈕元件實(shí)例。分別單擊兩個(gè)按鈕實(shí)例,在【屬性】面板中定義它們的實(shí)例名稱為:play_btn和stop_btn。 定義事件處理函數(shù) 新建一個(gè)圖層,并將它重新命名為“action”。選擇這個(gè)圖層的第1幀,在【動(dòng)作】面板中定義動(dòng)作腳本為: play_btn.onPress=function() play(); stop_btn.onPress=function() stop(); 測(cè)試一下,怎么樣?與前面的效果一樣吧!,4.事件偵聽器 事件偵聽器讓一個(gè)對(duì)象(稱作偵聽器對(duì)象)接收由其他對(duì)象(稱作廣播器對(duì)象)生成的事件。廣播器對(duì)象注冊(cè)偵聽
10、器對(duì)象以接收由該廣播器生成的事件。例如,你可以注冊(cè)按鈕實(shí)例,可以從文本字段對(duì)象接收onChanged通知。這里需要說(shuō)明的是,可以注冊(cè)多個(gè)偵聽器對(duì)象以從一個(gè)廣播器接收事件,也可以注冊(cè)一個(gè)偵聽器對(duì)象以從多個(gè)廣播器接收事件。 5.按鈕事件和影片剪輯事件 on()事件處理函數(shù)所支持的事件 press:事件發(fā)生于鼠標(biāo)在按鈕上方,并按下鼠標(biāo)時(shí)。 release:事件發(fā)生于在按鈕上方按下鼠標(biāo),接著松開鼠標(biāo)時(shí)。也就是“按一下”鼠標(biāo)。 releaseOutside:事件發(fā)生于在按鈕上方按下鼠標(biāo),接著把鼠標(biāo)拖動(dòng)到按鈕之外,然后松開鼠標(biāo)時(shí)。 rollOver:事件發(fā)生于鼠標(biāo)滑入按鈕時(shí)。 rollOut:事件發(fā)生于鼠
11、標(biāo)滑出按鈕時(shí)。 dragOver:事件發(fā)生于按著鼠標(biāo)不松手,鼠標(biāo)滑入按鈕時(shí)。 ragOut:事件發(fā)生于按著鼠標(biāo)不松手,鼠標(biāo)滑出按鈕時(shí)。 keyPress:事件發(fā)生于用戶按下指定的按鍵時(shí)。,onClipEvent()事件處理函數(shù)所支持的事件 press:事件發(fā)生于鼠標(biāo)在按鈕上方,并按下鼠標(biāo)時(shí)。 release:事件發(fā)生于在按鈕上方按下鼠標(biāo),接著松開鼠標(biāo)時(shí)。也就是“按一下”鼠標(biāo)。 releaseOutside:事件發(fā)生于在按鈕上方按下鼠標(biāo),接著把鼠標(biāo)拖動(dòng)到按鈕之外,然后松開鼠標(biāo)時(shí)。 rollOver:事件發(fā)生于鼠標(biāo)滑入按鈕時(shí)。 rollOut:事件發(fā)生于鼠標(biāo)滑出按鈕時(shí)。 dragOver:事件發(fā)生
12、于按著鼠標(biāo)不松手,鼠標(biāo)滑入按鈕時(shí)。 dragOut:事件發(fā)生于按著鼠標(biāo)不松手,鼠標(biāo)滑出按鈕時(shí)。 keyPress:事件發(fā)生于用戶按下指定的按鍵時(shí)。 onClipEvent()事件處理函數(shù)所支持的事件 load:影片剪輯一旦被實(shí)例化并出現(xiàn)在時(shí)間軸中時(shí),即啟動(dòng)此動(dòng)作。 unload:在時(shí)間軸中刪除影片剪輯之后,此動(dòng)作在第1幀中啟動(dòng)。在向受影響的幀附加任何動(dòng)作之前,先處理與unload影片剪輯事件關(guān)聯(lián)的動(dòng)作。 enterFrame:以影片剪輯幀頻不斷觸發(fā)的動(dòng)作。首先處理與enterFrame剪輯事件關(guān)聯(lián)的動(dòng)作,然后才處理附加到受影響幀的所有幀動(dòng)作。,mouseMove:每次移動(dòng)鼠標(biāo)時(shí)啟動(dòng)此動(dòng)作。_x
13、mouse和_ymouse屬性用于確定當(dāng)前鼠標(biāo)位置。 mouseDown:當(dāng)按下鼠標(biāo)左鍵時(shí)啟動(dòng)此動(dòng)作。 mouseUp:當(dāng)釋放鼠標(biāo)左鍵時(shí)啟動(dòng)此動(dòng)作。 keyDown:當(dāng)按下某個(gè)鍵時(shí)啟動(dòng)此動(dòng)作。 keyUp:當(dāng)釋放某個(gè)鍵時(shí)啟動(dòng)此動(dòng)作。 data:當(dāng)在loadVariables()或loadMovie()動(dòng)作中接收數(shù)據(jù)時(shí)啟動(dòng)此動(dòng)作。當(dāng)與loadVariables()動(dòng)作一起指定時(shí),data事件只在加載最后一個(gè)變量時(shí)發(fā)生一次。當(dāng)與loadMovie()動(dòng)作一起指定,獲取數(shù)據(jù)的每一部分時(shí),data事件都重復(fù)發(fā)生。,第四節(jié) 基本命令和程序結(jié)構(gòu)控制,1. 時(shí)間軸控制命令 gotoAndPlay 作用:跳轉(zhuǎn)
14、并播放,跳轉(zhuǎn)到指定場(chǎng)景的指定幀,并從該幀開始播放,如果沒有指定場(chǎng)景,則將跳轉(zhuǎn)到當(dāng)前場(chǎng)景的指定幀。 gotoAndstop 作用:跳轉(zhuǎn)并停止播放,跳轉(zhuǎn)到指定場(chǎng)景的指定幀并從該幀停止播放,如果沒有指定場(chǎng)景,則將跳轉(zhuǎn)到當(dāng)前場(chǎng)景的指定幀。 nextFrame() 作用:跳至下一幀并停止播放。 prevframe() 跳至前一幀并停止播放。 nextScene() 作用:跳至下場(chǎng)景并停止播放。,PrevScene() 作用:跳至前場(chǎng)景并停止播放。 play() 作用:可以指定電影繼續(xù)播放。 stop() 作用:停止當(dāng)前播放的電影,該動(dòng)作最常見的運(yùn)用是使用按鈕控制影片剪輯。 StopAllSounds()
15、 作用:使當(dāng)前播放的所有聲音停止播放,但是不停止動(dòng)畫的播放。要說(shuō)明一點(diǎn),被設(shè)置的流式聲音將會(huì)繼續(xù)播放。,2.瀏覽器和網(wǎng)絡(luò)控制命令 fscommand命令,fscommand可以執(zhí)行的命令和參數(shù),getURL命令 一般形式:GetURL(URL,Window,method) 作用:添加超級(jí)鏈接,包括電子郵件鏈接。 loadMovie和unloadMovie載入和卸載影片命令 由于交互的需要,我們常常在當(dāng)前電影播放不停止的情況下,播放另外一個(gè)電影或者是在多個(gè)電影間自由切換時(shí),這時(shí)就會(huì)用到loadMovie和unloadMovie命令,loadMovie命令載入電影,而unloadMovie則可以卸
16、載由loadMovie命令載入的電影。如果沒有LoadMovie動(dòng)作,則Flash播放器只能顯示單個(gè)電影(SWF)文件,然后關(guān)閉。 loadVariables命令 一般形式:loadVariables(url,level/”targt”, Variables); 作用:它可以從外部文件讀入數(shù)據(jù)。外部文件包括文本文件、由CGI腳本生成的文本、ASP、PHP或Perl腳本。讀入的數(shù)據(jù)作為變量將被設(shè)置到播放器級(jí)別或目標(biāo)影片剪輯中。,3.程序流程結(jié)構(gòu)控制 選擇結(jié)構(gòu) 一般情況下,F(xiàn)lash執(zhí)行動(dòng)作腳本從第一條語(yǔ)句開始,然后按順序執(zhí)行,直至達(dá)到最后的語(yǔ)句。這種按照語(yǔ)句排列方式逐句執(zhí)行的方式,稱為順序結(jié)構(gòu)。順序結(jié)構(gòu)是程序中使用最多的程序結(jié)構(gòu),但用順序結(jié)構(gòu)只能編寫一些簡(jiǎn)單的動(dòng)作腳本,解決一些簡(jiǎn)單的問題。,選擇結(jié)構(gòu)流程圖,循環(huán)結(jié)構(gòu),f
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣安市武勝超前外國(guó)語(yǔ)學(xué)校招聘?jìng)淇碱}庫(kù)(6人)及一套完整答案詳解
- 2026重慶醫(yī)療器械質(zhì)量檢驗(yàn)中心招聘2人備考題庫(kù)帶答案詳解
- 2026甘肅嘉峪關(guān)市中核嘉華公司招聘44人備考題庫(kù)及1套參考答案詳解
- 2026湖北咸寧市普通選調(diào)生招錄24人備考題庫(kù)及答案詳解(考點(diǎn)梳理)
- 2026浙江寧波市奉化區(qū)甬臺(tái)眾創(chuàng)小鎮(zhèn)開發(fā)建設(shè)有限公司招聘1人備考題庫(kù)帶答案詳解
- 2026陜西省公務(wù)員招錄備考題庫(kù)(5272人)及參考答案詳解一套
- 2026貴州銅仁市沿河土家族自治縣中醫(yī)醫(yī)院招聘合同制護(hù)理人員65人備考題庫(kù)附答案詳解
- 2026福建龍巖實(shí)驗(yàn)幼兒園紫金山分園招聘廚房人員備考題庫(kù)附答案詳解
- 2026浙江杭州市廣播電視監(jiān)測(cè)中心招聘編外工作人員1人備考題庫(kù)及參考答案詳解一套
- 生產(chǎn)偏差處理制度與管理規(guī)范
- 2026年深圳市離婚協(xié)議書規(guī)范范本
- 2026年及未來(lái)5年中國(guó)飼料加工設(shè)備行業(yè)發(fā)展前景預(yù)測(cè)及投資戰(zhàn)略研究報(bào)告
- 2026年自動(dòng)駕駛政策法規(guī)報(bào)告
- 醫(yī)療數(shù)據(jù)倫理治理的國(guó)際經(jīng)驗(yàn)借鑒
- 浙江省《檢驗(yàn)檢測(cè)機(jī)構(gòu)技術(shù)負(fù)責(zé)人授權(quán)簽字人》考試題及答案
- 子午流注在護(hù)理中的應(yīng)用
- 新媒體評(píng)論管理制度規(guī)范(3篇)
- 劑量反應(yīng)曲線的統(tǒng)計(jì)分析方法-洞察及研究
- 2025年高職室內(nèi)藝術(shù)設(shè)計(jì)(室內(nèi)設(shè)計(jì))試題及答案
- 2025課堂懲罰 主題班會(huì):馬達(dá)加斯加企鵝課堂懲罰 課件
- 2025年初會(huì)職稱《經(jīng)濟(jì)法基礎(chǔ)》真題匯編
評(píng)論
0/150
提交評(píng)論