趙志靖,周靜
(揚州大學(xué)新聞與傳媒學(xué)院,江蘇揚州225002)
基于Flash平臺的動畫控制組件的設(shè)計與開發(fā)
趙志靖,周靜
(揚州大學(xué)新聞與傳媒學(xué)院,江蘇揚州225002)
組件是帶參數(shù)的影片剪輯,開發(fā)者通過自定義組件,可以實現(xiàn)代碼重用,并且設(shè)計人員只需會使用組件而不需要知道組件是如何開發(fā)的。文章基于Flash平臺,利用ActionScript3.0腳本語言,通過創(chuàng)建動畫控制組件詳細闡述了自定義組件的設(shè)計與開發(fā)過程,對課件制作者具有很好的現(xiàn)實指導(dǎo)意義。
動畫控制組件;Flash平臺;ActionScript3.0腳本語言
Flash課件制作已成為教師、多媒體設(shè)計師等從業(yè)者必須掌握的技能。在制作Flash課件時,經(jīng)常需要采用動畫來描繪真實場景,從而提高教學(xué)效果。對于很多教師來說,F(xiàn)lash動畫很容易學(xué)會,但對動畫的控制需要編寫代碼,相對來說就非常困難;有些教師雖然懂得代碼編寫,但是每次控制動畫時都需要重新編寫代碼,不能實現(xiàn)代碼重用。如果將動畫的控制功能開發(fā)為一個組件,則可以實現(xiàn)代碼重用,并且操作者只需會使用組件而不需要知道組件是如何開發(fā)的。
在當(dāng)前Flash軟件的“組件”面板中沒有動畫控制組件,本文正是基于上述想法將動畫的控制功能定義成單獨的組件形式,以供隨時使用。這樣,教師就不需要理解組件是怎么執(zhí)行的,只需要知道組件怎么使用就可以了,并且教師不需要重復(fù)編寫同樣的代碼了。
組件是帶有參數(shù)的影片剪輯,這些參數(shù)可以用來修改組件的外觀和行為。每個組件都有預(yù)定義的參數(shù),并且它們可以被設(shè)置。Flash中包含的組件不是FLA文件,而是SWC文件。SWC是用于組件的文件格式。庫項目中的電影剪輯可以被預(yù)編譯成SWC文件,這樣可以縮短影片測試和發(fā)布的執(zhí)行時間。
組件使應(yīng)用程序的設(shè)計過程和編碼過程分開。通過組件,可以實現(xiàn)代碼重用,既可以重復(fù)使用自己創(chuàng)建的代碼,也可以通過下載并安裝其他開發(fā)人員創(chuàng)建的組件來重復(fù)使用別人的代碼。通過使用組件,代碼編寫者可以創(chuàng)建設(shè)計人員在應(yīng)用程序中能用到的功能。開發(fā)人員將常用功能封裝在組件中,設(shè)計人員只需在Flash中打開“組件檢查器”,更改設(shè)定參數(shù)就可以自定義組件的外觀和行為。使用組件避免了不必要的重復(fù)勞動,而且使程序結(jié)構(gòu)更清晰,更為重要的是,設(shè)計人員使用組件,不必關(guān)心組件是如何工作的。
本文基于Flash平臺,利用ActionScript3.0腳本語言設(shè)計并開發(fā)了一個動畫控制組件。
界面主要由視頻播放區(qū)域、播放/暫停按鈕、當(dāng)前進度顯示、播放進度條、視頻總長度顯示、音量控制按鈕組成,如圖1所示。
動畫控制組件主要用于控制Flash動畫,方便教師教學(xué)演示和控制,主要是播放、暫停、進度條拖動、聲音控制和顯示播放時間等。左邊的按鈕用來控制動畫的播放和暫停;中間時間軸上面的滑塊可以拖動以實現(xiàn)動畫播放進度的改變,鼠標放置在滑塊上會出現(xiàn)動畫播放的當(dāng)前幀數(shù)和動畫總幀數(shù)的顯示信息;最右邊可以通過上下拖動控制滑塊改變音量的大小。
(1)項目創(chuàng)建。Flash CS4使用項目開發(fā)機制,定義自己的項目并取相應(yīng)的名稱以標示。
(2)創(chuàng)建FLA文檔。創(chuàng)建相應(yīng)的FLA文檔,F(xiàn)LA文檔用于具體項目開發(fā)時界面元素的設(shè)計、定義,并有利于項目的保存與修改。
(3)新建影片剪輯。組件就是帶有參數(shù)的影片剪輯。新建影片剪輯并命名,影片剪輯中共有兩幀,第一幀里面放了一個占位符(占位符,就是用戶最終觀察成品時界面元素都只能在這個范圍內(nèi)顯示),第二幀里面放有組件開發(fā)所需要的資源,如界面按鈕、文本框、進度條等。
(4)綁定組件類到影片剪輯。在項目面板中創(chuàng)建組件類,為組件類命名SwfCtrl并將組件類綁定到步驟3中定義的影片剪輯。如圖4所示。
(5)編寫組件類SwfCtrl。在步驟4打開的.as文件中編寫SwfCtrl類的代碼,包括變量的聲明及初始化,各控制功能如播放、暫停、進度條拖動、聲音控制和顯示播放時間等代碼的編寫。
(6)代碼調(diào)試修改。項目開發(fā)中代碼一次性完成是不可能的,開發(fā)人員必須經(jīng)過多次調(diào)試才能夠?qū)Υa的結(jié)構(gòu)、效果有一定的把握,開發(fā)過程中這一步工作就是不斷地調(diào)試、修改自己的代碼,以達到結(jié)構(gòu)清晰、功能完善的目的。
(7)定義組件參數(shù)。鼠標右擊步驟3中定義的影片剪輯,選擇“組件定義”菜單,彈出組件定義面板。在組件定義面板中對組件參數(shù)進行定義和修改,通過點擊+、-按鈕可以添加、刪除參數(shù),還可以對參數(shù)的名稱、變量名、默認值、類型等進行定義。
(8)保存并導(dǎo)出組件。在保存完FLA文檔和類文件之后,鼠標右擊步驟3中定義的影片剪輯,選擇“導(dǎo)出SWC文件”菜單,設(shè)置保存路徑確定即可。
組件的安裝比較簡單,只需將上述導(dǎo)出的SWC文件復(fù)制到Flash的組件目錄“C:Documents and SettingsAdministratorLocal SettingsApplication DataAdobeFlash CS4zh_CNConfiguration”,復(fù)制完成后,重新啟動Flash軟件,新創(chuàng)建的組件便會出現(xiàn)在Flash軟件的“組件”面板中。
組件的使用:從“組件”面板中將新創(chuàng)建的組件拖入舞臺,并在“組件檢查器”設(shè)置相關(guān)參數(shù)即可使用。
本文通過創(chuàng)建一個動畫控制組件詳細闡述了自定義組件的設(shè)計與開發(fā)過程,具有很好的現(xiàn)實應(yīng)用意義。另外,系統(tǒng)在開發(fā)過程中還存在一些不足之處,如對動畫的控制目前只支持單層影片剪輯,對影片剪輯中嵌套影片剪輯的動畫無法控制;組件外觀樣式比較單一等,需要在下一步工作中做進一步的研究。
(編輯:魯利瑞)
TP311.56
B
1673-8454(2011)02-0046-02