




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、交交 互互 動動 畫畫交交 互互 動動 畫畫交互動畫概述交互動畫概述 交互動畫是指在動畫播放時支持交互動畫是指在動畫播放時支持事件響應事件響應和和交互功能交互功能的一種動畫,也就是說,動畫播放時可以接受某種的一種動畫,也就是說,動畫播放時可以接受某種控制控制。這種控制可以是用戶的某種操作,也可以是在動畫制作這種控制可以是用戶的某種操作,也可以是在動畫制作時預先時預先設置的操作設置的操作。這種交互性提供了觀眾參與和控制。這種交互性提供了觀眾參與和控制動畫播放的手段,使觀眾由被動接受變?yōu)橹鲃舆x擇。動畫播放的手段,使觀眾由被動接受變?yōu)橹鲃舆x擇。 交互動畫,是通過對交互動畫,是通過對幀幀或或按鈕按鈕設
2、置一定動作來實現的。設置一定動作來實現的。所謂的所謂的“動作動作”指的是一套命令語句,當條件滿足時就指的是一套命令語句,當條件滿足時就會發(fā)出命令來執(zhí)行特定的動作。而用來觸發(fā)這些動作的會發(fā)出命令來執(zhí)行特定的動作。而用來觸發(fā)這些動作的“事件事件”,無非就是播放指針指到某一幀,或者用戶單,無非就是播放指針指到某一幀,或者用戶單擊某個按鈕或按某個鍵。當這些事件發(fā)生時,動畫就會擊某個按鈕或按某個鍵。當這些事件發(fā)生時,動畫就會執(zhí)行事先已經設定好的動作。執(zhí)行事先已經設定好的動作。u從一個逐頁瀏覽器說起從一個逐頁瀏覽器說起ActionScript 概述概述 交互動畫都是通過交互動畫都是通過 Flash 內置的
3、腳本語言內置的腳本語言 ActionScript 完成的完成的。下面主要介紹關于下面主要介紹關于AS 的一些基礎知識和的一些基礎知識和編編程程方法方法。 簡單的說,添加腳本可分為兩種:一是把簡單的說,添加腳本可分為兩種:一是把腳本編寫在時間軸上面的腳本編寫在時間軸上面的關鍵幀關鍵幀上(注意,上(注意,必須是關鍵幀)。二是把腳本編寫在具體必須是關鍵幀)。二是把腳本編寫在具體對對象象上,比如把直接寫在上,比如把直接寫在MCMC(影片剪輯元件的(影片剪輯元件的實例)上或者實例)上或者按鈕按鈕上。上。ActionScript的類型的類型1.1.在關鍵幀上添加在關鍵幀上添加 將將ASAS添加在特定的幀上
4、,當動畫播放到該幀時,相應的添加在特定的幀上,當動畫播放到該幀時,相應的ASAS程序就會被執(zhí)行,典型的應用是控制動畫的播放和結束。程序就會被執(zhí)行,典型的應用是控制動畫的播放和結束。2.2.在按鈕上添加在按鈕上添加 這這種添加方式更加常用,例如常見的有鼠標滑過按鈕、按鈕種添加方式更加常用,例如常見的有鼠標滑過按鈕、按鈕被按下或彈起等,這樣很容易完成交互式動畫的制作。并且多被按下或彈起等,這樣很容易完成交互式動畫的制作。并且多個個ASAS程序被添加在同一按鈕時,各自具有獨立的動作,不會相程序被添加在同一按鈕時,各自具有獨立的動作,不會相互影響?;ビ绊?。3.3.在電影剪輯中添加在電影剪輯中添加 使用
5、該方式所添加的使用該方式所添加的ASAS往往是在該電影片段被載入或是為了往往是在該電影片段被載入或是為了載入某些過程中獲取相關信息才被執(zhí)行的。這種方式在實際中載入某些過程中獲取相關信息才被執(zhí)行的。這種方式在實際中應用較少,但使用起來會簡化很多制作工作。應用較少,但使用起來會簡化很多制作工作。按鈕的創(chuàng)建按鈕的創(chuàng)建u單擊單擊“插入插入”“新建元件新建元件”菜單命令菜單命令,彈出,彈出“創(chuàng)建新元件創(chuàng)建新元件”對話框。在該對話框內,輸入元件的名稱(例如對話框。在該對話框內,輸入元件的名稱(例如“圖像按圖像按鈕鈕”),選擇),選擇“按鈕按鈕”類型。單擊類型。單擊“確定確定”按鈕,切換到按按鈕,切換到按鈕
6、元件編輯狀態(tài),時間軸的鈕元件編輯狀態(tài),時間軸的“圖層圖層1”1”圖層中顯示圖層中顯示4 4個連續(xù)的個連續(xù)的幀,如圖所示。幀,如圖所示。u 用戶需要在這用戶需要在這4 4個幀中分別創(chuàng)建相應的按鈕外觀個幀中分別創(chuàng)建相應的按鈕外觀,可以導入,可以導入圖形、圖像、文字、圖形元件實例、影片剪輯元件實例(制作圖形、圖像、文字、圖形元件實例、影片剪輯元件實例(制作動畫按鈕)和聲音等,但不能在一個按鈕中再使用按鈕元件。動畫按鈕)和聲音等,但不能在一個按鈕中再使用按鈕元件。最好將按鈕圖形精確定位,使圖形的中心與十字標記對齊。按最好將按鈕圖形精確定位,使圖形的中心與十字標記對齊。按鈕的每一幀可以由多個圖層組成。鈕
7、的每一幀可以由多個圖層組成。u測試按鈕:測試按鈕:測試按鈕就是將鼠標指針移到按鈕之上和單擊按測試按鈕就是將鼠標指針移到按鈕之上和單擊按鈕,然后觀察它的動作效果(應該像播放影片時一樣按照指鈕,然后觀察它的動作效果(應該像播放影片時一樣按照指定的方式響應鼠標事件定的方式響應鼠標事件) )。測試按鈕以前要進行下述。測試按鈕以前要進行下述4 4種操作種操作中的一種。中的一種。工具箱工具箱分門別類列出分門別類列出腳本語句元素腳本語句元素腳本導航器腳本導航器列出與腳本相關聯的列出與腳本相關聯的幀位置和對象。單擊幀位置和對象。單擊選項將顯示相應腳本選項將顯示相應腳本。腳本編輯窗口腳本編輯窗口編輯修改腳本代碼
8、編輯修改腳本代碼的區(qū)域。的區(qū)域。編輯工具欄編輯工具欄給出常用編輯工具,給出常用編輯工具,最常用的是最常用的是,可調,可調出語句、屬性等。出語句、屬性等。狀態(tài)欄狀態(tài)欄給出當前腳本所對給出當前腳本所對應的圖層位置等。應的圖層位置等。gotoAndPlay();“收/展”按鈕快捷菜單認識動作面板認識動作面板u動作腳本是在動作腳本是在動作面板動作面板中編寫的,中編寫的,動作面板動作面板如下圖所示:如下圖所示:u程序(動作腳本)的編寫:程序(動作腳本)的編寫: 語句格式與語句格式與 C C 語言語言相仿,句尾需加分號相仿,句尾需加分號“;”;”結束。結束。 u 交互動畫的播放交互動畫的播放一旦添加了腳本
9、,一旦添加了腳本,其控制功能只在其控制功能只在“測試影片測試影片”方式下方可方式下方可表現,而在表現,而在“播放播放”方式下所表現的是無控播放,與不加控制腳方式下所表現的是無控播放,與不加控制腳本的情況完全一樣。本的情況完全一樣。u常用函數的意義常用函數的意義一、在一、在關鍵幀上編寫:關鍵幀上編寫:直接在直接在關鍵幀關鍵幀上寫語句。上寫語句。l格式:格式:語句;語句;如:如:stop; 到此關鍵幀中斷播放到此關鍵幀中斷播放腳本的編寫格式腳本的編寫格式l 說明:說明:語句必須寫在關鍵幀上,否則無效。語句必須寫在關鍵幀上,否則無效。動畫用動畫用 stop 暫停后,在暫停后,在 “影片測試影片測試”
10、 方式下,方式下,按按回車回車鍵將繼續(xù)運行,但不明確,最好使用按鈕,鍵將繼續(xù)運行,但不明確,最好使用按鈕,點擊按鈕使之繼續(xù)運行。點擊按鈕使之繼續(xù)運行。l 說明:說明: 控制按鈕一般應放在被控動畫上面的獨立圖層中??刂瓢粹o一般應放在被控動畫上面的獨立圖層中。 同一按鈕在不同畫段所編程序表現為同一按鈕在不同畫段所編程序表現為獨立性獨立性,互不影響,互不影響,相當于在不同畫段內擺放了同一按鈕的多個實例,但要在不相當于在不同畫段內擺放了同一按鈕的多個實例,但要在不同畫段的開始處同畫段的開始處添加關鍵幀添加關鍵幀,這類似于同一局部變量在不同,這類似于同一局部變量在不同的過程中相互獨立的效果。的過程中相互
11、獨立的效果。 對按鈕添加腳本時需要先選中按鈕層的對按鈕添加腳本時需要先選中按鈕層的非關鍵幀非關鍵幀處,并單處,并單擊擊選中按鈕選中按鈕,則所編程序就是面對該按鈕的程序。,則所編程序就是面對該按鈕的程序。切記萬不切記萬不可選在關鍵幀上,否則將視為面對關鍵幀編程。可選在關鍵幀上,否則將視為面對關鍵幀編程。二、對按鈕二、對按鈕編寫編寫AS:l如:如:on(release) gotoAndPlay(31); 點擊按鈕轉到點擊按鈕轉到31幀并播放幀并播放l格式:格式:on(事件事件)語句組語句組;法一:寫在按鈕上法一:寫在按鈕上u常見事件常見事件雙擊雙擊 事件說明:事件說明:(1) press(按按):
12、當鼠標移到按鈕上,單擊按下鼠標左鍵時觸發(fā)此事件。當鼠標移到按鈕上,單擊按下鼠標左鍵時觸發(fā)此事件。(2) release(釋放釋放):當鼠標移到按鈕上,單擊鼠標左鍵,并松開時觸發(fā)此事件。當鼠標移到按鈕上,單擊鼠標左鍵,并松開時觸發(fā)此事件。(3)(3)releaseOutside( (外部釋放外部釋放):):當鼠標移到按鈕上,單擊按下鼠標左鍵,并將鼠標移出按鈕當鼠標移到按鈕上,單擊按下鼠標左鍵,并將鼠標移出按鈕范圍,再松開鼠標左鍵時觸發(fā)此事件。范圍,再松開鼠標左鍵時觸發(fā)此事件。(4) rollOver(滑過滑過):當鼠標由按鈕外面,移到按鈕內部時觸發(fā)事件。當鼠標由按鈕外面,移到按鈕內部時觸發(fā)事件。
13、(5) rollOut( (滑離滑離):):當鼠標由按鈕內部,移到按鈕外邊時觸發(fā)此事件。當鼠標由按鈕內部,移到按鈕外邊時觸發(fā)此事件。(6) dragOver(拖過拖過):當鼠標掠過按鈕時觸發(fā)此事件。當鼠標掠過按鈕時觸發(fā)此事件。(7)dragOut(拖離拖離):當鼠標移到按鈕上,并按下鼠標并把鼠標拖出按鈕范圍時觸發(fā)此事件。當鼠標移到按鈕上,并按下鼠標并把鼠標拖出按鈕范圍時觸發(fā)此事件。(8)keyPress8)keyPress “” ( (按鍵按鍵):):當鍵盤的指定按鍵被按下時,觸發(fā)此事件。當鍵盤的指定按鍵被按下時,觸發(fā)此事件。l應用舉例:應用舉例: 打開網頁:打開網頁: 腳本程序:腳本程序:
14、on(release) getURL(http:/,_blank); 畫冊翻頁:畫冊翻頁:演示演示法二:寫在時間軸上法二:寫在時間軸上1.1.選中按鈕,在下面的屬性面板中為按鈕起一個名字,這里選中按鈕,在下面的屬性面板中為按鈕起一個名字,這里稱作稱作 botton1。2.2.選中時間軸按鈕層的關鍵幀,按選中時間軸按鈕層的關鍵幀,按 F9 打開動作面板進行編程。打開動作面板進行編程。如打開網頁:如打開網頁: botton1.onRelease = function() getURL(http:/www.hbu. cn,_blank); u需要明確需要明確,這種寫法應在事件名稱前面加一個,這種寫法
15、應在事件名稱前面加一個onon,比如,比如, 事件如果是事件如果是 Release的話,應該寫成的話,應該寫成 onRelease,否則將否則將 會報錯。會報錯。翻頁動畫分為兩種:翻頁動畫分為兩種:第一種第一種,直接在主場內逐次制作分頁;,直接在主場內逐次制作分頁;第二種第二種,間接制作,先將各分頁制作成影片剪輯元件,再將元件放回主場。前間接制作,先將各分頁制作成影片剪輯元件,再將元件放回主場。前者直接明了,但界面雜亂;后者界面整潔,但不夠明了。者直接明了,但界面雜亂;后者界面整潔,但不夠明了。為了使畫面為了使畫面更加豐富多彩,盡可能利用制作動畫的各種手段和方法,比如,形狀更加豐富多彩,盡可能
16、利用制作動畫的各種手段和方法,比如,形狀漸變、運動漸變、引導動畫、遮罩動畫等。漸變、運動漸變、引導動畫、遮罩動畫等。一、直接制作一、直接制作 . .先行分段制作動畫頁,在各畫段末端關鍵禎寫入暫停語句先行分段制作動畫頁,在各畫段末端關鍵禎寫入暫停語句stopstop。注意:新起畫段時,要將上一畫段延續(xù)下來的內容清除注意:新起畫段時,要將上一畫段延續(xù)下來的內容清除掉,以免重疊。掉,以免重疊。 . .在動畫層之上添加按鈕層,并對按鈕統一命名如在動畫層之上添加按鈕層,并對按鈕統一命名如 B1B1,并將,并將按鈕層延續(xù)到所有畫段尾端。按鈕層延續(xù)到所有畫段尾端。 . .對按鈕層,在與動畫層各畫段起始禎對應
17、位置處插入關鍵禎,對按鈕層,在與動畫層各畫段起始禎對應位置處插入關鍵禎,將按鈕層與相應畫面對應分段。將按鈕層與相應畫面對應分段。 . .注意最好不要對按鈕層先分段再放按鈕,注意最好不要對按鈕層先分段再放按鈕,以免使按鈕不能公以免使按鈕不能公用和統一命名。用和統一命名。l 翻頁畫冊的制作要領翻頁畫冊的制作要領l 翻頁畫冊的制作要領翻頁畫冊的制作要領二、間接制作二、間接制作 分頁動畫往往涉及不同的動畫形式,這勢必會增加動畫層分頁動畫往往涉及不同的動畫形式,這勢必會增加動畫層次,使舞臺界面趨于雜亂,為此,最好將各畫頁先行制作成次,使舞臺界面趨于雜亂,為此,最好將各畫頁先行制作成元件,然后再將其拖放到
18、舞臺,用集成的原件實例構造分頁元件,然后再將其拖放到舞臺,用集成的原件實例構造分頁動畫,占據少量的關鍵幀,達到簡化界面的目的,使舞臺更動畫,占據少量的關鍵幀,達到簡化界面的目的,使舞臺更加清晰整潔。加清晰整潔。. .制作影片剪輯元件:制作影片剪輯元件: “插入插入”新建元件新建元件” ”影片剪輯影片剪輯” ” 進入元件制作進入元件制作環(huán)境,為影片剪輯命名并制作動畫。環(huán)境,為影片剪輯命名并制作動畫。l 翻頁畫冊的制作要領翻頁畫冊的制作要領二、間接制作(二、間接制作(續(xù)續(xù)) . .在主場中擺放實例:在主場中擺放實例: 返回主場(場景),將所建元件擺放到位,則實例僅占一個返回主場(場景),將所建元件
19、擺放到位,則實例僅占一個關鍵禎位置關鍵禎位置。 . .在主場中控制元件實例暫停播放的方法:在主場中控制元件實例暫停播放的方法: 一般在實例上暫停即可,但對于無需循環(huán)播放的實例,除了一般在實例上暫停即可,但對于無需循環(huán)播放的實例,除了主場中進行暫停外,同時制作元件時也要有暫停,否則將會反主場中進行暫停外,同時制作元件時也要有暫停,否則將會反復播放。復播放。 . .主場中的暫停腳本的編寫:主場中的暫停腳本的編寫: 既可以寫在另外加的關鍵禎上,也可以在實例的本禎上,只既可以寫在另外加的關鍵禎上,也可以在實例的本禎上,只是翻頁按鈕的程序不同,對于前者既可以寫在按鈕上(要留出是翻頁按鈕的程序不同,對于前
20、者既可以寫在按鈕上(要留出非關鍵禎點),也可以寫在時間軸(關鍵禎)上,而后者只能非關鍵禎點),也可以寫在時間軸(關鍵禎)上,而后者只能寫在時間軸(關鍵禎)上,因為沒有非關鍵禎點。要注意二者寫在時間軸(關鍵禎)上,因為沒有非關鍵禎點。要注意二者的的編程格式不同編程格式不同。 三、制作技巧三、制作技巧 . .命令按鈕上文字的修改與添加:命令按鈕上文字的修改與添加:雙擊主場中按鈕實例或雙擊按鈕元件,進入元件編輯狀雙擊主場中按鈕實例或雙擊按鈕元件,進入元件編輯狀態(tài),按下文字工具按鈕態(tài),按下文字工具按鈕A,在按鈕上進行文字書寫或修改,在按鈕上進行文字書寫或修改,返回主場即可。但要注意,若元件被加鎖,編輯
21、文本時返回主場即可。但要注意,若元件被加鎖,編輯文本時要將其要將其開鎖開鎖。 . .按鈕字體的著色:按鈕字體的著色:借助選中文本的屬性欄實現。借助選中文本的屬性欄實現。l 翻頁畫冊的制作要領翻頁畫冊的制作要領三、制作技巧三、制作技巧(續(xù)續(xù)) .關閉動畫腳本的編寫:關閉動畫腳本的編寫: 格式:格式:on (release) fscommand(quit); 說明:說明:作用:作用:點擊按鈕關閉動畫并退出。點擊按鈕關閉動畫并退出。運行運行:必須在必須在獨立運行(獨立運行(運行可執(zhí)行文件)時方可表現,運行可執(zhí)行文件)時方可表現,“測試影片測試影片”方式下不可。方式下不可。 fscommand 指令位
22、置:指令位置:在在“全局函數全局函數”“瀏覽器瀏覽器 網網絡絡”目錄下。目錄下。編寫方式:編寫方式:一般一般“關閉關閉”腳本應在按鈕層未分段時統一腳本應在按鈕層未分段時統一編寫或將按鈕置于獨立圖層中單獨編寫,以便在各畫段中編寫或將按鈕置于獨立圖層中單獨編寫,以便在各畫段中都適用。都適用。l 翻頁畫冊的制作要領翻頁畫冊的制作要領三、制作技巧三、制作技巧(續(xù)續(xù)).命令按鈕事件框架的構建:命令按鈕事件框架的構建:用鼠標雙擊用鼠標雙擊“動作動作”面板面板 “全局函數全局函數” ” “ “影片剪輯影片剪輯控制控制”目錄下的目錄下的onon命令,將在程序編輯區(qū)自動構造程序結命令,將在程序編輯區(qū)自動構造程序
23、結構并列出事件列表以供選擇。構并列出事件列表以供選擇。l 翻頁畫冊的制作要領翻頁畫冊的制作要領也可借助動作面板也可借助動作面板“腳本助手腳本助手”直接添加直接添加語句語句構成程序框構成程序框架。架。三、制作技巧三、制作技巧(續(xù)續(xù)).將主場動畫轉換成元件:將主場動畫轉換成元件:按下按下鼠標左鍵選中包括關鍵禎動畫片斷鼠標左鍵選中包括關鍵禎動畫片斷復制選中區(qū)域復制選中區(qū)域 右擊選中區(qū)域,在快捷菜單中右擊選中區(qū)域,在快捷菜單中 “復制禎復制禎” 右擊右擊關鍵禎關鍵禎在快捷菜單中在快捷菜單中 “粘貼禎粘貼禎”l 翻頁畫冊的制作要領翻頁畫冊的制作要領按鈕腳本程序的編寫格式按鈕腳本程序的編寫格式u寫在按鈕上
24、寫在按鈕上on(release) gotoAndPlay(31); u寫在時間軸寫在時間軸B1.onRelease = function() gotoAndPlay(31); Press事件發(fā)生于鼠標在按鈕上方,并按下鼠標。事件發(fā)生于鼠標在按鈕上方,并按下鼠標。Release 發(fā)生在按鈕上方按下鼠標并松開。也就是發(fā)生在按鈕上方按下鼠標并松開。也就是“按一下按一下”鼠標。鼠標。Releaseoutside 發(fā)生于在按鈕上方按下鼠標,接發(fā)生于在按鈕上方按下鼠標,接著把光標移動到按鈕之外,然后松開鼠標。著把光標移動到按鈕之外,然后松開鼠標。Rollover當鼠標滑入按鈕時。當鼠標滑入按鈕時。Roll
25、out當鼠標滑出按鈕時。當鼠標滑出按鈕時。Dragover發(fā)生于按著鼠標不放,光標滑入按鈕。發(fā)生于按著鼠標不放,光標滑入按鈕。Dragout發(fā)生于按著鼠標不放,光標滑出按鈕。發(fā)生于按著鼠標不放,光標滑出按鈕。Keypress發(fā)生于用戶按下特定的鍵盤按鍵時。發(fā)生于用戶按下特定的鍵盤按鍵時。l按鈕常見事件按鈕常見事件三、對影片剪輯編寫:三、對影片剪輯編寫: 兩種情況:兩種情況:AS寫在影片剪輯(寫在影片剪輯(實例實例)上、寫在時間軸()上、寫在時間軸(關鍵幀關鍵幀)上。)上。l寫在影片剪輯上寫在影片剪輯上(點擊實例)(點擊實例) 格式:格式:onClipEvent(事件事件)語句組;語句組;例:例
26、:onClipEvent(keyUp)_root.P1.stop(); 停止本場景內名為停止本場景內名為P1實例的動作。實例的動作。_root 代表本場景。代表本場景。(功功能鍵不起作用,其他鍵可以能鍵不起作用,其他鍵可以)l應用舉例:應用舉例:小球移動動畫小球移動動畫 制作元件:制作元件:畫一個圓作影片剪輯,將其拖放到舞臺創(chuàng)建實例。畫一個圓作影片剪輯,將其拖放到舞臺創(chuàng)建實例。 編寫腳本:單擊編寫腳本:單擊選中該實例,按選中該實例,按 F9 F9 打開動作面板。打開動作面板。 選擇選擇 onClipEvent之后在顯示的事件中選擇之后在顯示的事件中選擇 EnterFrame,然,然后在里面編寫
27、腳本:后在里面編寫腳本:this._x+=5;腳本編寫后應為:腳本編寫后應為: onClipEvent (EnterFrame) this._x += 5; / / EnterFrame 的意思是以影片幀頻不斷地觸發(fā)此動作。的意思是以影片幀頻不斷地觸發(fā)此動作。 / /this 代表這個影片剪輯自身。代表這個影片剪輯自身。_x表示影片剪輯的表示影片剪輯的 x 軸坐標。軸坐標。l寫在時間軸上寫在時間軸上(點擊關鍵幀)(點擊關鍵幀)格式:格式:實例名實例名 . 事件名稱事件名稱=function()語句組;語句組; 說明:說明:需要注意的是,與按鈕相仿,這種格式也需要需要注意的是,與按鈕相仿,這種格
28、式也需要在事件名稱前面加一個在事件名稱前面加一個 on 。 - - load 影片剪輯一旦被實例化并出現在時間軸中時,即啟動此動作。影片剪輯一旦被實例化并出現在時間軸中時,即啟動此動作。- - unload 在從時間軸中刪除影片剪輯之后,此動作在第一幀中啟動。處在從時間軸中刪除影片剪輯之后,此動作在第一幀中啟動。處理與理與 Unload 影片剪輯事件關聯的動作之前,不向受影響的幀附加任何影片剪輯事件關聯的動作之前,不向受影響的幀附加任何動作。動作。 - - enterFrame 以影片幀頻不斷地觸發(fā)此動作。以影片幀頻不斷地觸發(fā)此動作。- - mouseMove 每次移動鼠標時啟動此動作。每次移
29、動鼠標時啟動此動作。_xmouse 和和 _ymouse 屬性屬性用于確定當前鼠標位置。用于確定當前鼠標位置。- - mouseDown 當按下鼠標左鍵時啟動此動作。當按下鼠標左鍵時啟動此動作。- - mouseUp 當釋放鼠標左鍵時啟動此動作。當釋放鼠標左鍵時啟動此動作。- - keyDown 當按下某個鍵時啟動此動作。使用當按下某個鍵時啟動此動作。使用 Key.getCode 方法獲取最方法獲取最近按下的鍵的有關信息。近按下的鍵的有關信息。 - - keyUp 當釋放某個鍵時啟動此動作。使用當釋放某個鍵時啟動此動作。使用 Key.getCode 方法獲取最方法獲取最近按下的鍵的有關信息。近
30、按下的鍵的有關信息。 - - data 當在當在 loadVariables 或或 loadMovie 動作中接收數據時啟動此動作。動作中接收數據時啟動此動作。當與當與 loadVariables 動作一起指定時,動作一起指定時,data 事件只發(fā)生一次,即加載最后事件只發(fā)生一次,即加載最后一個變量時。當與一個變量時。當與 loadMovie 動作一起指定時,獲取數據的每一部分時,動作一起指定時,獲取數據的每一部分時,data 事件都重復發(fā)生。事件都重復發(fā)生。l影片剪輯常見事件影片剪輯常見事件l舉例:舉例:小球移動動畫小球移動動畫/該句可改為該句可改為mc._x+= mc._x + 5;l特別
31、提請注意:特別提請注意:事件字頭該大寫的一定要大寫,否則不予執(zhí)行。事件字頭該大寫的一定要大寫,否則不予執(zhí)行。如:如:onEnterFrame不能寫作不能寫作onenterframe 首先需要為影片剪輯實例起一個名字,比如首先需要為影片剪輯實例起一個名字,比如 mc mc ,再選中,再選中時間時間軸的第一幀軸的第一幀,打開動作面板,輸入以下腳本:,打開動作面板,輸入以下腳本: mc.onEnterFrame = function() this._x += 5; 法一:拖放法法一:拖放法 用鼠標將用鼠標將“動作動作”面板左邊命令列表區(qū)內面板左邊命令列表區(qū)內“全局函全局函數數”“影片剪輯控制影片剪輯
32、控制”目錄下的目錄下的onClipEvent命令拖命令拖放到程序編輯區(qū)內。放到程序編輯區(qū)內。l 命令按鈕或影片剪輯事件程序框架的構建:命令按鈕或影片剪輯事件程序框架的構建:法二:菜單法法二:菜單法 利用動作面板上的利用動作面板上的“腳本助手腳本助手”直接添加直接添加onClipEvent構成程序框架。構成程序框架。案例案例1 1 播放控制播放控制1.1.按按ctrl+F8ctrl+F8,新建立一個影片剪輯,并起名字為,新建立一個影片剪輯,并起名字為“動畫動畫”。做一個簡單的影片剪輯。做一個簡單的影片剪輯。2.2.回到舞臺工作區(qū),按回到舞臺工作區(qū),按F11F11打開庫,將動畫影片剪輯拖放到舞打開
33、庫,將動畫影片剪輯拖放到舞臺中。并給這個實例起個名字叫臺中。并給這個實例起個名字叫mcmc。 (按(按Ctrl + + 回車測試效果,動畫將會不停地播放)回車測試效果,動畫將會不停地播放)3.3.添加腳本,讓該添加腳本,讓該MCMC在影片一開始不要自動播放。選中時間在影片一開始不要自動播放。選中時間軸的第一幀,按軸的第一幀,按F9F9打開動作面板,選擇專家模式,輸入:打開動作面板,選擇專家模式,輸入:_root.mc.stop( ); (_root_root代表舞臺,這個腳本的意思就是,代表舞臺,這個腳本的意思就是,舞臺上名字叫舞臺上名字叫MCMC的實例停止播放。)的實例停止播放。)4.4.制
34、作幾個按鈕,分別表示播放、暫停、前進、后退、停止。并制作幾個按鈕,分別表示播放、暫停、前進、后退、停止。并擺放在舞臺上。擺放在舞臺上。5.5.現在要添加控制影片的腳本。這次把腳本直接寫在舞臺上這些現在要添加控制影片的腳本。這次把腳本直接寫在舞臺上這些按鈕的身上。選中播放按鈕,打開動作面板,輸入:按鈕的身上。選中播放按鈕,打開動作面板,輸入:on (release) _root.mc.play(); 如果要在按鈕身上寫腳本的話,必須使用:如果要在按鈕身上寫腳本的話,必須使用: on( (事件事件)/)/腳本程序腳本程序 的格式來寫!的格式來寫! 上面的腳本作用就是:當在該按鈕上按一下鼠標,則觸發(fā)
35、上面的腳本作用就是:當在該按鈕上按一下鼠標,則觸發(fā) release事件事件,就會執(zhí)行下面的,就會執(zhí)行下面的 _ _root.mc.play(); 程序,意思是讓程序,意思是讓舞臺上的舞臺上的mc開始播放。開始播放。 6.6.同理:選中舞臺上的暫停按鈕,在它上面輸入:同理:選中舞臺上的暫停按鈕,在它上面輸入: on (release) _ root.mc.stop()然后依次在快退上輸入:然后依次在快退上輸入: on (release) _root.mc.prevFrame(); /prevFrame表示回到動畫的上一幀。表示回到動畫的上一幀。在快進的按鈕上輸入:在快進的按鈕上輸入: on (r
36、elease) _root.mc.nextFrame();在停止的按鈕上輸入:在停止的按鈕上輸入:on (release) _root.mc.gotoAndStop(1); 表示跳到表示跳到mc影片的第一幀,并停止播放!影片的第一幀,并停止播放!案例案例2 2打開網頁打開網頁 u ASAS腳本編寫可以寫在時間軸的關鍵幀上,也可以寫在對象腳本編寫可以寫在時間軸的關鍵幀上,也可以寫在對象本身上面。按鈕也不例外,既可以寫在時間軸上,也可以寫本身上面。按鈕也不例外,既可以寫在時間軸上,也可以寫在按鈕本身上面。在按鈕本身上面。u實現效果:做一個按鈕,這個按鈕要實現的功能就是打開一實現效果:做一個按鈕,這
37、個按鈕要實現的功能就是打開一個指定的網個指定的網頁。 方法一方法一把把ASAS寫在按鈕上寫在按鈕上1.1.在舞臺上繪制一個矩形,選中矩形并按在舞臺上繪制一個矩形,選中矩形并按F8F8,將這個矩形轉,將這個矩形轉換成按鈕元件。換成按鈕元件。2.2.編寫動作腳本:編寫動作腳本:選中按鈕,按選中按鈕,按F9F9,打開動作面板,輸入以下腳本:,打開動作面板,輸入以下腳本:on(release) getURL(http:/,_blank) 則該按鈕就實現了一個打開網頁的功能。則該按鈕就實現了一個打開網頁的功能。按鈕的按鈕的ASAS編寫規(guī)則編寫規(guī)則 on on語句就是按鈕的語句就是按鈕的ASAS編寫規(guī)則了
38、。需要注意的是編寫規(guī)則了。需要注意的是onon里面的事件,這個里面的事件,這個事件你可以理解為是鼠標或鍵盤的動作。剛才的例子我們使用的事件是事件你可以理解為是鼠標或鍵盤的動作。剛才的例子我們使用的事件是releaserelease(按一下鼠標)現在把常用的按鈕事件列出(按一下鼠標)現在把常用的按鈕事件列出事件名字事件名字說明說明PressPress事件發(fā)生于鼠標在按鈕上方,并按下鼠標事件發(fā)生于鼠標在按鈕上方,并按下鼠標ReleaseRelease發(fā)生在按鈕上方按下鼠標并松開。也就是發(fā)生在按鈕上方按下鼠標并松開。也就是“按一下按一下”鼠標鼠標ReleaseoutsideReleaseoutsid
39、e發(fā)生于在按鈕上方按下鼠標,接著把光標移動到按鈕發(fā)生于在按鈕上方按下鼠標,接著把光標移動到按鈕之外,然后松開鼠標之外,然后松開鼠標RolloverRollover當鼠標滑入按鈕時當鼠標滑入按鈕時RolloutRollout當鼠標滑出按鈕時當鼠標滑出按鈕時DragoverDragover發(fā)生于按著鼠標不放,光標滑入按鈕發(fā)生于按著鼠標不放,光標滑入按鈕DragoutDragout發(fā)生于按著鼠標不放,光標滑出按鈕發(fā)生于按著鼠標不放,光標滑出按鈕KeypressKeypress發(fā)生于用戶按下特定的鍵盤按鍵時發(fā)生于用戶按下特定的鍵盤按鍵時方法二把方法二把ASAS寫在時間軸上寫在時間軸上1.1.選中按鈕,
40、在下面的屬性面板中為按鈕起一個名選中按鈕,在下面的屬性面板中為按鈕起一個名字,這里我起了一個字,這里我起了一個botton1; ;2.2.選中時間軸的第一幀,按選中時間軸的第一幀,按F9F9打開動作面板。輸入打開動作面板。輸入如下腳本:如下腳本: botton1.onRelease = function() getURL(http:/,_blank) ; 案例案例3 AS3 AS實現的動畫實現的動畫1 1、新建立一個電影剪輯元件,里面你就隨便畫一個圓吧。之后把這個新建立一個電影剪輯元件,里面你就隨便畫一個圓吧。之后把這個影片剪輯拖放到舞臺之中(也就是創(chuàng)建一個此影片剪輯的實例)。影片剪輯拖放到舞
41、臺之中(也就是創(chuàng)建一個此影片剪輯的實例)。2 2、 現在開始編寫腳本,選中這個現在開始編寫腳本,選中這個MCMC,按,按F9F9打開動作板,選擇打開動作板,選擇onClipEvent,之后在顯示的事件中選擇,之后在顯示的事件中選擇enterFrame,然后在里面編,然后在里面編寫腳本如下:寫腳本如下:this._x+=5 這個腳本編寫之后應該是:這個腳本編寫之后應該是: onClipEvent (enterFrame) ) / / enterFrame 的意思是以影片幀的意思是以影片幀頻不斷地觸發(fā)此動作頻不斷地觸發(fā)此動作 this._x += 5;this._x += 5; / /thisth
42、is代表這個影片剪輯自身。代表這個影片剪輯自身。_x_x表示影片表示影片剪輯的剪輯的X X軸坐標。每播放一幀,向右移動軸坐標。每播放一幀,向右移動5 5個像素個像素 影片剪輯的影片剪輯的ASAS編寫格式編寫格式 從這個例子不難看出,如果把從這個例子不難看出,如果把ASAS寫在影片剪輯本身寫在影片剪輯本身上,正確的上,正確的書寫格式就是:書寫格式就是: onClipEvent ( (事件事件) ) / /需要執(zhí)行的腳本程序需要執(zhí)行的腳本程序 這個可以看成是公式,你記住就行了,是寫在影片這個可以看成是公式,你記住就行了,是寫在影片剪輯身上的。括號里的剪輯身上的。括號里的“事件事件”其實是個觸發(fā)器,
43、當其實是個觸發(fā)器,當事件發(fā)生時,執(zhí)行該事件后面花括號中的語句。事件發(fā)生時,執(zhí)行該事件后面花括號中的語句。影片剪輯的影片剪輯的ASAS編寫編寫l- load- load 影片剪輯一旦被實例化并出現在時間軸中時,即啟動影片剪輯一旦被實例化并出現在時間軸中時,即啟動此動作。此動作。l- unload- unload 在從時間軸中刪除影片剪輯之后,此動作在第一幀在從時間軸中刪除影片剪輯之后,此動作在第一幀中啟動。處理與中啟動。處理與 Unload Unload 影片剪輯事件關聯的動作之前,不向影片剪輯事件關聯的動作之前,不向受影響的幀附加任何動作。受影響的幀附加任何動作。 l- enterFrame-
44、 enterFrame 以影片幀頻不斷地觸發(fā)此動作。以影片幀頻不斷地觸發(fā)此動作。l- mouseMove- mouseMove 每次移動鼠標時啟動此動作。每次移動鼠標時啟動此動作。_xmouse_xmouse 和和 _ymouse_ymouse 屬性用于確定當前鼠標位置。屬性用于確定當前鼠標位置。l- mouseDown- mouseDown 當按下鼠標左鍵時啟動此動作。當按下鼠標左鍵時啟動此動作。l- mouseUp- mouseUp 當釋放鼠標左鍵時啟動此動作。當釋放鼠標左鍵時啟動此動作。 l- keyDown- keyDown 當按下某個鍵時啟動此動作。使用當按下某個鍵時啟動此動作。使用
45、 Key.getCodeKey.getCode 方法獲取最近按下的鍵的有關信息。方法獲取最近按下的鍵的有關信息。 l - keyUp- keyUp 當釋放某個鍵時啟動此動作。使用當釋放某個鍵時啟動此動作。使用 Key.getCodeKey.getCode 方方法獲取最近按下的鍵的有關信息。法獲取最近按下的鍵的有關信息。 l- data- data 當在當在 loadVariablesloadVariables 或或 loadMovieloadMovie 動作中接收數據動作中接收數據時啟動此動作。當與時啟動此動作。當與 loadVariables loadVariables 動作一起指定時,動作
46、一起指定時,datadata 事件只發(fā)生一次,即加載最后一個變量時。當與事件只發(fā)生一次,即加載最后一個變量時。當與 loadMovieloadMovie 動作一起指定時,獲取數據的每一部分時,動作一起指定時,獲取數據的每一部分時,datadata 事件都重復事件都重復發(fā)生。發(fā)生。在時間軸上添加語句n首先你把剛才的腳本去掉。然后需要為這個影片剪輯實例起一個名字mcn選中時間軸的第一楨,打開動作面板,輸入以下腳本:nmc.onEnterFrame = function() nthis._x += 5; /也可以把這句為mc._x+=5 為什么?n;n顯而易見,在時間軸上的寫法就應該套用以下公式:n
47、 實例名.事件名稱=function()n /腳本程序nn需要注意的是,這種寫法的事件名稱不要忘了在前面加一個on,比如,事件如果是EnterFrame的話,你就應該寫成onEnterFrame案例:改變實例屬性案例:改變實例屬性n1.新建一個文件,導入一個電影剪輯符號。n2.新建按鈕符號,命名為“上”,繪制向上的箭頭,并且導入一段聲音。n3.復制按鈕,分別建立下,左,右,右轉,左轉,放大,縮小幾個按鈕。n4.將所有的按鈕都拖動到舞臺上,對齊。n5.單擊“上”按鈕,F9打開語句面板,添加下面語句:案例:改變實例屬性案例:改變實例屬性non (press) n_root.a._y=_root.a
48、._y-10;(_root.a._y-=10;)nn在“下”添加:_root.a._y=_root.a._y+10n“左”添加:_root.a._x=_root.a._x-10n“右”添加:_root.a._x=_root.a._x +10n“左旋轉”添加: _root.a._rotation=_root.a._rotation-30n“右旋轉”添加: _root.a._rotation=_root.a._rotation+30n“放大”添加:_root.a._xscale=_root.a._xscale+2;_root.a._yscale=_root.a._yscale+2n“縮小”添加:_
49、root.a._xscale=_root.a._xscale-2;_root.a._yscale=_root.a._yscale-2動態(tài)文本n為動態(tài)文本賦值n方法1 使用動態(tài)文本的實例名字來賦值n操作步驟:n (1)在舞臺上創(chuàng)建一個動態(tài)文本框,并為這個動態(tài)文本實例起一個名字,例如test n (2)選中時間軸的第一楨,打開動作面板,輸入以下腳本:n test.text = 為動態(tài)文本賦值n 按下ctrl+回車就可進行測試了。從這個簡單的例子可以知道,如果要用文本實例名字來進行賦值的話,必須使用以下格式:動態(tài)文本實例的名字.text=”需要賦值的內容” 動態(tài)文本的賦值n方法2:使用變量來賦值n(
50、1)在舞臺上創(chuàng)建一個動態(tài)文本框,并為這個動態(tài)文本實例起一個變量名test。n(2)選中時間軸的第一楨,打開動作面板,輸入以下腳本:n test = 為動態(tài)文本賦值!n 不難看出,使用變量賦值更為簡單實用!賦值格式為: 變量名=“賦值的內容”案例:取得坐標值n_xmouse,就是鼠標的水平位置。_ymouse,就是鼠標的垂直位置n1.Layer1命名為XY,在舞臺上先產生兩個一般文字 X:及Y:n2.產生兩個動態(tài)文字,分別在屬性面版的將變量命名為“xpos”以及“ypos”,并且隱藏文字邊框及背景,并取消可以選取的功能,這樣可以避免誤導誤以為該文字可以被選取或是輸入,n3.Frame 1的Act
51、ion窗口鍵入以下程序代碼,nxpos=_xmouse;/xpos顯示的坐標nypos=_ymouse; /yos顯示y坐標n4.延長到第幀,這樣的作用主要是要形成循環(huán),反復執(zhí)行Frame1的程序代碼,讓畫面的動態(tài)文字的值,隨時保持更新。屬性。案例:取得坐標值n5.在舞臺上畫一條長度超過畫面的垂直線,再將該線條轉為Movie Clip并給實例命名為Vlinen6.在舞臺上畫一條長度超過畫面的水平線,再將該線條轉為Movie Clip并給實例命名為Hline n7.Frame1再增加以下Actionn_root.vline._x=_xmouse;/vline的坐標為當前鼠標的x坐標;n_root
52、.hline._y=_ymouse; / hline的坐標為當前鼠標的y坐標; 繪圖及顏色的繪圖及顏色的AS編寫編寫n繪圖命令講解n在使用flash的過程中,難免會進行繪圖的操作。除了用工具面板上的工具繪制圖形之外,我們也可以使用ActionScript來繪制圖形。nlineStyle(粗細,顏色,透明度)/設置繪制圖形的線條粗細、顏色和透明度nMoveto(坐標,坐標)/設置繪圖線條的起點坐標nlineto(坐標,坐標)/設置線條的結束坐標案例:使用語言繪制矩形n、新建一個flash文件。n、要繪制一個*大小的矩形,先確定矩形個頂點的坐標。(50,50) (350,50) (350,150)
53、 (50,150)n、選中時間軸的第1楨,打開動作面板?,F在已經確定了矩形的個頂點,那么我們就可以來編寫腳本命令了,請輸入以下腳本:n_root.lineStyle(1, 0 x000000, 100);/設置線條的粗細,顏色和透明度n_root.moveTo(50, 50);/設置開始點的坐標。n_root.lineTo(350, 50);n_root.lineTo(350, 150);n_root.lineTo(50, 150);n_root.lineTo(50, 50); /設置結束點坐標,整個矩形繪制完畢案例:心連心n、新建立一個flash文檔,在舞臺上繪制一個心,選中它并按轉換成影片
54、剪輯,起名為:心。n、打開庫面板,將影片剪輯“心”在舞臺上再拖放一個實例,使舞臺上存在兩個心的實例。n、現在為舞臺上兩個實例分別起名字為a和b n、選中時間軸第一楨,打開動作面板,輸入以下腳本:案例:心連心nfunction draw() /自己定義一個函數,這個函數起名為draw(可自定),函數的功能是要實現以a實例的坐標為起點,向b實例繪制線條。n_root.clear();/清除舞臺上繪制的線條。n_root.lineStyle(1, 0 x000000, 90);/設置線條的粗細,顏色和透明度。n_root.moveTo(a._x, a._y);/以a實例的坐標為起點開始繪制線條。n_root.lineTo(b._x, b._y);/以b實例的坐標為繪制線條的結束點。nndraw();/執(zhí)行函數draw,它將會在a與b之間繪制出一條黑色的線條。n案例:心連心n、現在創(chuàng)建拖動效果,選中舞臺上的b實例,打開動作面板,輸入以下腳本:non (press) /點擊此實例,開始拖動nthis.startDrag(true);nnon (release) /釋放鼠標,停止拖動nthis.stopDrag();nnonClipEvent (mouseMove) /當鼠標移動,也就是這個b實例移動的時候,就執(zhí)行里面的程序。n_root.draw();/執(zhí)行舞臺上定義過的draw(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年河北廊坊市大廠回族自治縣財信城市建設投資集團招聘筆試參考題庫附帶答案詳解
- 水利水電工程的技術創(chuàng)新案例與試題及答案
- 工程項目的關鍵環(huán)節(jié)管理試題及答案
- 系統思維的2025年工程經濟試題及答案
- 工程成本估算試題及答案
- 2025年市政工程考試資料試題及答案
- 管理辦法修訂探討活動
- 慈善經費使用管理辦法
- 貨車司機薪酬管理辦法
- 科技孵化基金管理辦法
- 人教版(2024)七年級下冊英語期末模擬測試卷(含答案)
- 兵團開放大學2025年春季《公共關系學》終結考試答案
- 電線電纜出入庫管理制度
- 供應蒸汽服務合同協議書
- T/CADCC 003-2024汽車漆面保護膜施工技術規(guī)程
- 中國機器人工程市場調研報告2025
- 2025年金融科技企業(yè)估值方法與投資策略在金融科技企業(yè)并購中的應用案例報告
- 福建省廈門市雙十中學2025屆七年級生物第二學期期末聯考模擬試題含解析
- 【小學】新蘇教版小學數學四年級下冊暑假每日一練(02):計算題-應用題(含答案)
- 2025豬藍耳病防控及凈化指南(第三版)
- TCUWA20059-2022城鎮(zhèn)供水管網模型構建與應用技術規(guī)程
評論
0/150
提交評論