freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件專業(yè)畢業(yè)論文--基于java的mp3播放器的設計與實現(xiàn)(編輯修改稿)

2025-07-20 22:49 本頁面
 

【文章內(nèi)容簡介】 明一些Controller的屬性的改變。2.狀態(tài)轉變事件可以使你的程序對Controller對象的狀態(tài)轉變作出反應。Player當從一個狀態(tài)轉為另一狀態(tài)時都會產(chǎn)生transition events。3.當Controller關閉時,它將產(chǎn)生關閉事件。5 三、系統(tǒng)架構和功能模塊分析 MVC架構是“ModelViewController”的縮寫,即將“模型視圖控制”作為應用程序構成的三要素。Event(事件)導致Controller改變Model或View,或者同時改變兩者。只要Controller改變了Models的數(shù)據(jù)或者屬性,所有以來的View都會自動更新。類似的,只要Controller改變了View,View會從潛在的Model中獲取數(shù)據(jù)來刷新自己。相應地,本軟件也同樣使用MVC思想指導設計,做到模塊細化,分工明確,模塊間邏輯順序清晰的三大目標。流程如圖31所示圖31 框架流程圖對于音頻播放器,必須給用戶提供最簡單的操作和最完善的功能。至少應該能夠對音頻文件進行播放、暫停、停止、音量和進度拖放操作等。除了最基本的操作以外,優(yōu)秀的播放器還提供了許多附加的功能來突出顯示該媒體播放器的特色,例如本播放器的歌詞實時顯示。在這樣的情況下,對播放器的設計目標要求有如下功能的實現(xiàn):用戶界面窗口的控制功能:播放器主窗口控制、播放列表窗口的控制和歌詞顯示窗口的控制;媒體文件的播放控制功能:開始播放、暫停播放、停止播放和拖動播放等;媒體文件的管理功能:添加歌曲、添加目錄,刪除歌曲、清空列表、保存列表和裝載列表;音頻文件信息顯示功能:將音頻文件的基本信息呈現(xiàn)給用戶,同時用戶自己可以設置一些信息。本軟件同樣采用MVC的設計模式,做到控制,信息與視圖的相互分離,同時相互間有聯(lián)系緊密,互相調(diào)用,互為條件與依賴。故將系統(tǒng)分為五大模塊進行構建,分別是用戶界面模塊播放控制模塊播放信息模塊播放列表控制模塊歌詞控制模塊其相互關系如圖32所示:播放信息模塊用戶界面模塊播放控制模塊播放列表控制模塊歌詞控制模塊播放列表歌曲信息用戶請求事件 用戶請求事件 視圖信息更新 視圖信息更新 更新信息 信息 更新 讀取 讀取 更新圖32 相互關系圖 用戶界面模塊為了實現(xiàn)軟件產(chǎn)品界面的友好性和簡潔性,同時又要保證功能的完整性,播放器的控制窗口的設計顯得更是不同一般的重要。首先,給出該界面的組件組成。 于一個小小的窗口,要擺放這么多的控件,如果隨便地放在窗口上的話,將會使窗口十分混亂,影響使用,所以要對其擺放位置進行合理的規(guī)劃。這些控件被按照功能分成了3組,它們分別是控制面板、播放列表面板和LRC面板。這樣一來,就可以實現(xiàn)軟件產(chǎn)品界面的友好性與簡潔性,條理分明,在保證軟件產(chǎn)品功能完整性的同時,方便了用戶的使用。各面板關系如圖33:主框架控制面板播放列表面板LRC面板系統(tǒng)菜單欄控制按鈕控制條標簽播放列表菜單欄LRC右鍵菜單播放列表LRC顯示屏圖33 面板關系圖 播放信息模塊 放信息模塊由播放信息,播放列表,歌曲信息節(jié)點三個層次嵌套而成,如34所示:播放信息播放列表1(默認)播放列表2播放狀態(tài)。歌曲信息節(jié)點1歌曲信息節(jié)點2歌曲信息節(jié)點。歌曲信息節(jié)點1歌曲信息節(jié)點2歌曲信息節(jié)點。圖34 信息模塊關系圖 對音頻文件的傳遞 音頻文件的傳送主要是用在播放列表處理的過程中,當播放器的用戶想利用本播放器來播放一個音頻文件時,首先要做的就是將該音頻文件所在磁盤上的地址傳到播放列表模塊中,由播放列表將信息傳遞給播放信息模塊進行數(shù)據(jù)更新。當要播放該文件時,就從播放信息模塊中提取當前索引所指向該文件地址并將地址傳送到播放控制模塊,然后賦值給管理器Manager的新創(chuàng)建的媒體定位器對象(MediaLocator),Manager創(chuàng)建播放器(Player)后,剩下的工作都交給Player進行音頻文件的播放。 對歌詞文件的傳遞 詞的實時顯示作為本播放器的重要功能,LRC歌詞文件的處理流程也就顯得至關重要,因為LRC歌詞可能處于不同位置,所以其地址和數(shù)據(jù)處理流程要比音頻文件的處理流程要復雜得多。 先,也是將音頻文件所在磁盤上的地址傳到播放列表中,當要播放該文件時,就從播放列表中提取該文件地址并將地址傳送到播放控制窗口,并將音頻文件擴展名改為LRC,以獲得一個與MP3文件相同路徑的LRC歌詞文件的地址,將音頻文件名和LRC文件名傳遞到播放信息模塊;在播放信息模塊中先讀取音頻文件的TAG信息,然后將音頻文件末尾的內(nèi)容傳遞給歌詞處理模塊,檢查該音頻文件是否內(nèi)嵌了歌詞,如果內(nèi)嵌歌詞存在則分離出時間信息和歌詞文本并返回;如果不存在內(nèi)嵌歌詞,則檢查同路徑下LRC歌詞文件是否存在,如果存在則將其傳遞給歌詞處理模塊進行歌詞處理,分離出時間信息和歌詞文本并返回;如果不存在則嘗試自動關聯(lián)歌詞文件夾中是否存在該歌詞。如果存在,則將其傳遞給歌詞控制模塊進行時間信息和歌詞文本的分離,然后返回播放控制模塊;如果此時返回的歌詞存在,則將其傳遞給歌詞顯示窗口進行顯示,并使用時間信息進行控制。如果上述3處都沒有歌詞,則可以使用歌詞右鍵菜單中的關聯(lián)歌詞功能按鈕手動關聯(lián)LRC歌詞文件。 播放控制流程 器Player從建立之初到消亡,各有一系列已經(jīng)在JMF中編寫好的方法可以調(diào)用。 軟件也自定義了一系列方法來實現(xiàn)播放,暫停,停止,時間拖拽,播放邏輯如圖35所示:播放狀態(tài) Stop() Play() 暫停狀態(tài) 停止狀態(tài) 正在播放狀態(tài)Player創(chuàng)建Player啟動播放歌曲判斷播放器狀態(tài)恢復播放重新播放停止當前播放重置時間播放暫停停止時間條拖動事件分配資源圖35 播放邏輯圖四、系統(tǒng)詳細設計與實現(xiàn) 。Eclipse是一個開放源代碼的,基于Java的可擴展開發(fā)平臺,也同時是目前非常流行的跨平臺的自由集成開發(fā)環(huán)境(IDE)。Eclipse本身非常小,其設計思想是“一切皆為插件”,其他功能都是基于插件的形式與Eclipse無縫結合,協(xié)同工作,如Eclipse的圖形開發(fā)環(huán)境(SWT/JFace),Java開發(fā)環(huán)境插件(JDT),多國語言包,等。在Eclipse啟動后,要真正用到某個插件是,該插件才會被動態(tài)載入內(nèi)存,不再被使用的插件會在適當?shù)臅r候被清出內(nèi)存,本系統(tǒng)使用到的典型插件的例子就是用于開發(fā)圖形界面的VisualEditor 戶界面的主要有三大任務,即受被改變的信息,顯示/更新界面信息聽用戶/播放器的事件改變的信息傳遞給其
點擊復制文檔內(nèi)容
規(guī)章制度相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1