提到音樂播放器,大家很自然地會想起winnamp,不過我一直想做一個屬于自己的音樂播放器,但是我不會vb或c語言,怎么辦呢?幸好,對多媒體制作大師authorware我還是比較熟悉的,于是我就開始捉摸用authorware來diy一個音樂播放器,經過一番嘗試,終于實現了一些基本功能,好東東不敢獨享,在此與諸位一起分享。
實現功能:
1、自動取得指定目錄下的音樂文件;
2、按順序循環播放或亂序播放;
3、支持mp3和swa文件格式的音樂文件,實時顯示正在播放的音樂文件名。
由于這兒用到了列表函數,因此為了看懂源程序,大家最好先查一查列表函數的用法,在這兒就不再詳細敘述了,很多的authorware論壇上都有介紹。
實現過程:
在動手做之前,我們先來看看這個程序完成后的總流程圖(見圖1),這樣可以使我們有一個初步的總體印象。
1、打開authorware新建一個“音樂播放器”文件,然后按總流程圖所示將圖標依次拖放到流程線上,分別給圖標命名(提示:這個習慣很重要,它可以讓我們能更快的讀懂源程序,便于以后修改。),其中條件交互設置條件為:mediaplaying@"bmp3"=false,表示當bmp3聲音圖標不在播放、暫停或播放完畢后響應該條件交互,執行該交互下的分支。交互屬性設為:永久響應,分支為“返回”。
2、打開“信息”顯示圖標,在適當位置輸入:{rfilename[j_a]},注意,大括號必須在英文狀態下輸入,并將顯示圖標屬性設置為:更新變量顯示。
3、打開“獲取文件名”計算圖標,在其中輸入以下內容:
--取得文件列表,假設所有的音樂文件放在music文件夾中
filestring:=catalog(filelocation^"music","f")
--取得文件個數
filenumber:=linecount(filestring,return)
--取得文件后綴名并篩選出mp3、swa文件名存到一維列表rfilename中。
repeat with i:=1 to filenumber
filenames:=getline(filestring,i)
filefix:=substr(filenames,rfind(".",filenames)+1,charcount(filenames))
if filefix="mp3" then
j_a:=j_a+1
rfilename[j_a]:=filenames
else if filefix="swa"then
j_a:=j_a+1
rfilename[j_a]:=filenames
end if
end repeat
[1] [2] [3] 下一頁
新聞熱點
疑難解答