国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ActionScript的音樂播放器的研究

2016-03-15 14:13姚競英
關(guān)鍵詞:補(bǔ)間播放器按鈕

姚競英

(無錫城市職業(yè)技術(shù)學(xué)院,江蘇無錫214153)

基于ActionScript的音樂播放器的研究

姚競英

(無錫城市職業(yè)技術(shù)學(xué)院,江蘇無錫214153)

Flash是一款功能強(qiáng)大的二維動畫制作軟件,ActionScript語言使動畫有了強(qiáng)大的交互性和控制作用。文章介紹了ActionScript語言的歷史、特點(diǎn)和核心語言功能,舉例講解了三類Flash的交互功能,探討了基于ActionScript語言的音樂播放器的設(shè)計(jì)。

ActionScript;Flash;音樂播放器

Flash是Adobe公司出品的一款功能強(qiáng)大、應(yīng)用廣泛的矢量動畫制作軟件,它所采用的矢量圖圖像質(zhì)量高、生成的動畫文件體積小,易于在網(wǎng)絡(luò)上運(yùn)行和傳播。Flash從6.0開始,每一次版本的升級,其內(nèi)置腳本語言ActionScript都是重頭戲,它使得Flash不僅能制作專業(yè)水準(zhǔn)的動畫,還具有強(qiáng)大的交互性控制作用,在多媒體、游戲等方面都有著精彩的表現(xiàn)。

1 ActionScript語言(簡稱AS)

1.1AS語言介紹

Flash動畫的制作技術(shù)主要有逐幀動畫、傳統(tǒng)補(bǔ)間動畫、補(bǔ)間動畫和補(bǔ)間形狀,其中又有引導(dǎo)、遮罩等內(nèi)容使動畫更加豐富多彩,但這些技術(shù)制作出的動畫只能讓用戶觀看,卻不能與用戶產(chǎn)生互動,未免就過于死板,因此,Macromedia公司專門為Flash設(shè)計(jì)了AS語言,精彩的技術(shù)配合上多樣化的AS語言,使動畫能夠與用戶更好地交流,有了質(zhì)的飛越。

AS和Java一樣是基于ECMAScript(編程語言的國際規(guī)范化的語言)開發(fā)的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,它的類庫豐富多樣化,功能很強(qiáng)大,主要用于控制播放、數(shù)據(jù)顯示、交互功能、動態(tài)網(wǎng)頁、實(shí)用性開發(fā)和虛擬實(shí)驗(yàn)等。AS程序由ActionScript虛擬機(jī)(AVM)執(zhí)行,而AS3.0所使用的執(zhí)行虛擬機(jī)AVM2.0的執(zhí)行效率遠(yuǎn)遠(yuǎn)超過之前的版本。

1.2AS語言的特點(diǎn)

AS語言采用Flash中的事件來對程序驅(qū)動,以關(guān)鍵幀、影片剪輯元件、按鈕等作為對象來定義和編寫。Flash動畫場景能縮放自由并且不變形;生成的SWF文件中的文字、圖像、音頻、視頻等數(shù)據(jù)是經(jīng)過打包壓縮的,文件體積比較小,適合傳播。AS語言包含了算法、變量和函數(shù),由很多行代碼組成,每行又有若干的命令、函數(shù)、變量組成,具有對XML對象、組件和類的支持,能夠?qū)崿F(xiàn)后臺數(shù)據(jù)和各種事件之間的交互。

1.3AS3.0的核心語言功能

1)運(yùn)行時異常處理機(jī)制:與之前的AS版本相比,AS3.0報(bào)告的錯誤類型比較多,在運(yùn)行時顯示錯誤會指出行號信息注釋的堆棧跟蹤,使用戶快速地找到錯誤點(diǎn)。

2)密封類:它只具有在編譯程序時定義的一組固定的方法和屬性,不可以隨意添加其它內(nèi)容,這讓編譯時的檢查顯得更加嚴(yán)格,增加了程序的可靠性??墒褂胐ynamic關(guān)鍵字實(shí)現(xiàn)動態(tài)類。

3)運(yùn)行時類型:AS3.0中,類型信息在程序運(yùn)行時給予保留,并且可用在以本機(jī)形式表示變量,減少了內(nèi)存的使用量,提高了程序的性能。Flash Player運(yùn)行時執(zhí)行類型檢查,提高了系統(tǒng)的類型安全性。

4)閉包方法:此項(xiàng)功能有利于事件的處理,可以記錄它的原始對象實(shí)例。

5)新數(shù)據(jù)類型:AS3.0具有int類型和uint類型。int類型是32位整型,包括正整數(shù)、負(fù)整數(shù)和零,它利用了CPU的快速處理整數(shù)運(yùn)算的能力。Uint類型是無符號整形,用來表示零和正整數(shù),主要用于字節(jié)計(jì)數(shù)和RGB顏色值。

2 Flash的交互功能

利用AS語言,F(xiàn)lash能讓用戶按照自己的想法創(chuàng)建動畫,并且能夠參與到動畫中來。Flash的交互過程包含了事件和動作腳本兩個主要內(nèi)容,其中的“事件”分為影片剪輯事件、幀事件、鼠標(biāo)事件等。

2.1按鈕元件的交互

指利用按鈕元件來控制動畫的播放。例如制作一個按鈕來控制背景音樂的開關(guān):按鈕元件外觀制作完成后,放到舞臺適當(dāng)?shù)奈恢茫x中它,按F9打開“動作面板”,給按鈕添加如下腳本:

on(release){//鼠標(biāo)單擊按鈕后才能觸發(fā)按鈕事件

mymusic=new Soun();//創(chuàng)建一個聲音對象,名為mymusic

mymusic.stop();//聲音暫停

mymusic.loadSound(“bk.mp3”,false);//加載文件名為bk.mp3的音樂到mymusic對象中。參數(shù)false表示音樂完全加載后才能start()函數(shù)播放

mymusic.start();//播放背景音樂

再用同樣的方法添加一個控制音樂停止的按鈕2.2鍵盤事件的交互

指用鍵盤來控制動畫的播放。這里需要考慮的問題是:程序怎樣可以響應(yīng)鍵盤事件;對符合條件的程序和不符合條件的程序如何分別處理。例如在“雷電游戲簡易版”中,創(chuàng)建如下“鍵盤松開處理”函數(shù)

function keyud(e:KeyboardEvent){//方向鍵松開時數(shù)組[0]元素清零;其它功能鍵松開時,數(shù)組[1]元素清零

if(e.keycode>=37&&e.keycode<=40){

codearr[0]=0;

}else{

coder[1]=0;

2.3數(shù)據(jù)的交互

AS3.0不能直接訪問操作數(shù)據(jù)庫,與后臺交互實(shí)現(xiàn)數(shù)據(jù)交流就需要后臺服務(wù)端語言,例如jsp、asp、php等網(wǎng)絡(luò)語言,通過get或者post方式提交數(shù)據(jù)到后臺,或者通過數(shù)據(jù)接口讀取后臺數(shù)據(jù),通常交互的數(shù)據(jù)格式為xml或者json。在AS3.0里,原來的load-Vars方法已經(jīng)不再使用,而改用一系列的類來實(shí)現(xiàn)與后臺數(shù)據(jù)的交互,這些類是:URLLoader,URLLoader-DataFormat,URLStream,URLVariables。

3 基于AS的音樂播放器

在Flash中基于AS的音樂播放器的制作主要分成以下幾部分內(nèi)容:

1)播放器界面:可以在PS中繪制完成,或在Flash中用繪圖工具完成;

2)XML文件:可以在文本文件或網(wǎng)頁中完成,主要包含該播放器所要播放的MP3文件的相關(guān)信息如名稱、存放地址等,以便使用;

3)新建一個專門放置代碼的圖層,取名AS,在其第1幀添加分別實(shí)現(xiàn)以下幾種功能的代碼。

定義數(shù)組和聲音類

預(yù)讀函數(shù)

播放聲音函數(shù)

function loadsound(x){

played=0;

pausefalse;

key=true;

=new Sound();

s.loadSound(urlx,true);

trackname=(id+1)+".-"+mp3name[id];

s.start();

s.onSoundComplete=function(){

id=(id==mp3total.length-1)?0:(id+1);

loadsound(mp3[id]);

};

mix.gotoAndStop(1);

preloading();

預(yù)讀XML、分析XML、讀取XML

4)制作4個控制音樂的按鈕,分別是上一首、停止、播放/暫停和下一首,依次取名an1-an4。在圖層AS中為按鈕添加代碼(以an2為例)。

an2.onPress=function(){

//判斷這個按鈕是否可以按下去

if(key){

s.stop();//停止聲音

trackname="STOP";//trackname里面顯示STOP

mix.gotoAndPlay(1);//讓模擬音高的MC停止播放

played=0;

key=false;

s=new Sound();

};

5)在界面上放置動態(tài)文本框,變量為timeline,在圖層AS中添加代碼,為播放器加上歌曲播放時間顯示。

6)制作音樂控制條和進(jìn)度條。

7)制作模擬頻率音高的動畫:在影片剪輯元件中用遮罩技術(shù)完成。

4 總結(jié)

隨著計(jì)算機(jī)動畫技術(shù)的不斷發(fā)展,F(xiàn)lash從最初的較多用逐幀技術(shù)創(chuàng)作二維動畫,到如今加入了3D效果、骨骼動畫、編程技術(shù),內(nèi)容越來越豐富,功能日漸強(qiáng)大。在Flash中利用時間軸和元件實(shí)例,加上補(bǔ)間動畫、補(bǔ)間形狀等技術(shù),運(yùn)用自帶的功能強(qiáng)大的組件庫,可以制作出生動的動畫作品,再配合使用ActionScript添加代碼,渲染效果,與用戶產(chǎn)生很好的互動,使得Flash在應(yīng)用軟件設(shè)計(jì)、游戲制作、數(shù)學(xué)建模、解繪制圖等方面表現(xiàn)更精彩,開啟了新的篇章。

[1]禹祿君.基于大數(shù)據(jù)的信息系統(tǒng)關(guān)鍵技術(shù)研究[J].湖南郵電職業(yè)技術(shù)學(xué)院學(xué)報(bào),2015(3):40-42.

[2]張屹峰.基于ActionScript的教學(xué)仿真動畫設(shè)計(jì)的研究[J].電腦與信息技術(shù),2015(4):29-32.

[3]劉悅.基于Flash ActionScript的漢字書寫軟件的設(shè)計(jì)與實(shí)現(xiàn)[J].電腦知識與技術(shù),2015(9):80-82.

[4]王云.使用ActionScript腳本打造動畫場景特效[J].圖形處理與多媒體,2015(20):83-84.

[5]陳雨婕.基于ActionScript3.0的Flash游戲開發(fā)探討[J].實(shí)踐與經(jīng)驗(yàn),2015(1):16-18.

[6]張忠華.Flash平臺的數(shù)據(jù)庫應(yīng)用方法[J].中國醫(yī)學(xué)教育技術(shù),2013(12):669-671.

[7]郭德偉,柯建宏.基于Flash ActionScript的機(jī)構(gòu)運(yùn)動簡圖測繪實(shí)驗(yàn)設(shè)計(jì)與開發(fā)[J].計(jì)算機(jī)與數(shù)字工程,2012(2):105-108.

Research onmusic player based on ActionScript

YAO Jing-ying
(Wu xi City CollegeofVocational Technology,Wu xi,Jiang su,China214153)

Flash isa kind of powerful two-dimensional animation software.ActionScript languagemakes the animation have strong interaction and control functions.Theauthor introduces thehistory,characteristics and core language functionsof ActionScript language. The paper explains the interaction function of three kinds of Flash with examples and discusses the design ofmusic p layer based on ActionScript language.

ActionScript;Flash;music player

10.3969/j.issn.2095-7661.2016.03.009】

TN912.2

A

2095-7661(2016)03-0033-02

2016-06-20

姚競英(1979-),女,江蘇無錫人,講師,碩士,研究方向:FLASH動畫制作、程序設(shè)計(jì)、數(shù)據(jù)庫。

猜你喜歡
補(bǔ)間播放器按鈕
當(dāng)你面前有個按鈕
Walkman誕生40周年 索尼適時發(fā)布NW-ZX500和NW-A100系列播放器
淺析Flash中三種“補(bǔ)間”動畫的應(yīng)用
迷宮尋寶
基于STM32的MP3播放器設(shè)計(jì)
Moon ACE播放器/放大器一體機(jī)
死循環(huán)
播放器背板注塑模具設(shè)計(jì)
用微課輔助“動畫補(bǔ)間”動畫教學(xué)
加強(qiáng)自主探究學(xué)習(xí)提高信息表達(dá)能力——“‘父親’的變化——形狀補(bǔ)間動畫”教學(xué)設(shè)計(jì)