.net C#音樂播放器設計實習報告_第1頁
.net C#音樂播放器設計實習報告_第2頁
.net C#音樂播放器設計實習報告_第3頁
.net C#音樂播放器設計實習報告_第4頁
.net C#音樂播放器設計實習報告_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

付費下載

VIP免費下載

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《.net技術》實習報告帶智能關機和查看日歷功能的音樂播放器設計班級:電子信息工程01班指導老師:林**姓名:高樂順學號:**********設計時間:2010年12月20日至2010年12月30日

正文開始設計目的:很多人在使用播放器的時候下載的播放器軟件總是比較大,一般軟件較大的打開就會比較慢,運行起來也沒較小的軟件運行的更“流暢“。而且當我們使用播放器的時候或是只用電腦的時候我們有時會忘記關掉電腦就離開或是睡著了!雖然電腦自帶的操作系統也可以設置定時關機但比較麻煩,對電腦初學者更是不知道怎么使用操作系統設置定時關機啦!還有就是我們電腦桌面下的時鐘一般只顯示了幾點鐘,并沒有顯示今天是多少號,所以在影月播放器中添加一個可以查看日歷的功能是很必要的!實現的功能:在這里我就為大家設計一款小巧的音樂播放器,同時還帶有智能關機功能,所謂智能關機就是你想怎么時候關機就什么時候關機,你想立刻關機就立刻關機,想定時關機就可以自己設置關機時間,設置方法非常的簡單啦。同時你只需要單擊一下一個“三角圖標鍵”(在下面還將結合圖示提到)就可以看到日歷表了,在日歷表里你也可以選擇查看你需要的那個月的日歷表。同時我也在播放器中添加了顯示現在時鐘的功能。下面介紹一下我設計的播放器的所有功能:首先你可以通過“添加文件夾”按鈕添加你選擇的文件夾內的所有音頻文件,你也可以通過“添加文件”按鈕單個添加你所要添加的音頻文件,具體方法在下面我會給出截圖加以說明,保證一看就懂,就會用。添加音樂文件后你就可以在你的播放列表里看到你添加的歌曲名了。你可以通過雙擊列表中的歌曲名進行播放你雙擊的歌曲或者單擊選中列表中歌曲名后再單擊播放按鈕進行播放。在播放時你可也看到正在播放的歌曲名和播放進度,這里的播放進度使用顯示正在播放的歌曲“已經播放了多長時間”和這首歌要播放的“總時間”,還有就是上一曲、暫停、下一曲、停止,除實現播放的基本功能外,還有一個功能那就是我在上面給大家提到的“智能關機”物體規則震動發出的聲音稱為“音樂”,由有組織的樂音來表達人們思想感情、反映現實生活的一種藝術就是音樂,音樂是一種符號,聲音符號,表達人的所思所想,音樂能表達一個人的內心世,界音樂能是人快樂,能使人放松心情。為了方便人們能夠聽到美麗的音樂,音樂播放器就成為我們的音樂大師了。設計好的播放器運行時如下圖:實現設計的過程:播放器功能圖解:播放器所具有的功能播放器所具有的功能智能關機!顯示當前時間拖動播放器窗體顯示播放歌曲信息添加音頻文件雙擊列表中歌曲名拖動播放播放進度滑塊控制播放位置播放暫停停鞥止上曲下曲自動保存列表現在關機定時關機操作流程圖:先打開先打開安裝好的播放器播放器界面加要你需要播文的歌曲文件回到播放界面雙擊列表或是先單擊選中歌曲名再單擊播放按鈕關機播放歌曲設置定時關機時間→確定→時間到→確定關機下面說明下我設計的具體步驟,我設計音樂播放器將采用WindowsMediaPlayer的編程接口和C#.NET編程技術,我使用VisualStudio2010作為開發工具。要使用首先要具有c#.net的基本編程技術,然后然后下載VisualStudio2010作為開發工具,安裝好后就可以開始編程了,打開VisualStudio2010新建項目中選擇新建windows窗體,創建好窗體后首先從工具箱中向窗體添加“WindowsMediaPlayer”組件具體方法如下:(1)“工具箱”右鍵“選擇項(I)”(2)在彈出的“選擇工具箱項”對話框中選擇“COM組件”選項卡。(3)在COM組件列表中選擇WindowsMediaPlayer,單擊確定。播放音樂主要采用的的是調用WindowsMediaPlayer接口,首先需要構造一個界面,在界面上創建如上圖中的播放列表框控件(listbox)、和“上一曲”(button1)、“播放/暫停”(button2)、“下一曲”(button3)“停止”(button4)控件。播放/暫停的代碼如下:PlayAndStop();再另定義一個方法如下:privatevoidPlayAndStop(){index=this.listBox1.SelectedIndex;//獲得當前選定的文件的索引try{if(stop%2==0){stringselectname=this.listBox1.SelectedItem.ToString();//獲取選定的文件名stringplayurl=playlist[selectname].ToString();axWindowsMediaPlayer1.URL=playurl;axWindowsMediaPlayer1.Ctlcontrols.currentPosition=currentPosition;//當前播放的進度stop=stop+1;axWindowsMediaPlayer1.Ctlcontrols.play();currentPosition=0;}else{currentPosition=axWindowsMediaPlayer1.Ctlcontrols.currentPosition;//暫停時的進度axWindowsMediaPlayer1.Ctlcontrols.pause();stop=stop-1;}}catch(Exception){return;}}停止的單擊事件代碼如下:privatevoidbutton4_Click(objectsender,EventArgse){axWindowsMediaPlayer1.Ctlcontrols.stop();}接下來添加一個trackBar控件作為聲音調節控件。代碼如下:axWindowsMediaPlayer1.settings.volume=this.trackBar1.Value;另外還要在窗體的加載事件中設定這個控件的最小值和最大值,在下面的窗體事件中還會提到其代碼的。現在在窗體中添加一個groupBox組件,再在groupBox中添加添加“添加文件”、和添加“添加文件夾”控件。在此button的cliect事件中首先調用FolderBrowserDialog創建一個實例,然后判斷用戶點擊的按鈕,如果是DialogResult.OK然后獲得其絕對路徑,然后創建一個FileInfo對象,然后獲得該文件夾下擴展名為.mp3、.wma、、、.wMa的文件,然后把他們加載到播放列表中,部分代碼如下:在寫代碼之前還要記得添加一個openFileDialog組件。部分過程圖如下:在使用num++之前請先定義,還有上面提到的stop也要先定義,可以在classForm1類中首先定義,“添加文件”按鈕代碼:privatevoidbutton5_Click(objectsender,EventArgse){num++;//openFileDialog1.Filter="mp3格式文件|*.mp3|wma文件格式|*.wma|所有D文件t|*";openFileDialog1.Multiselect=true;openFileDialog1.Title="請選擇音頻文件";if(openFileDialog1.ShowDialog()==DialogResult.OK){stringfilepath=this.openFileDialog1.FileName;FileInfof=newFileInfo(filepath);stringfilename=num.ToString()+"-"+f.Name;playlist.Add(filename,filepath);this.listBox1.Items.Add(filename);}“添加文件夾”按鈕代碼:privatevoidbutton6_Click(objectsender,EventArgse){folderBrowserDialog1.SelectedPath=@"d:\";//設置文件夾的初始目錄folderBrowserDialog1.ShowNewFolderButton=true;//顯示新建文件夾按鈕folderBrowserDialog1.Description="請選擇MP3文件的路徑";//對話框的說明文字folderBrowserDialog1.ShowDialog();//顯示對話框stringpath=folderBrowserDialog1.SelectedPath;stringapplicationaddress=Application.StartupPath;stream=newFileStream(applicationaddress+"配置文件.txt",FileMode.Create);StreamWriterwriter=newStreamWriter(stream);writer.Write(path);writer.Close();stream.Close();NewMethod(path);}上面提到的NewMethod()方法另定義其代碼如下:privatevoidNewMethod(stringpath){DirectoryInfodir=newDirectoryInfo(path);//實現MP3格式的加入處理foreach(FileInfofindir.GetFiles("*.mp3")){stringfilepath=f.FullName;num++;stringlistfilename=num.ToString()+"-"+f.Name;//顯示到控件的文件的名稱playlist.Add(listfilename,filepath);//添加到集合的文件名稱this.listBox1.Items.Add(listfilename);}}現在在窗體中添加另一個groupbox用于裝入4個label控件其中兩個命名為“當前進度”和“總時間”另兩個命名為“空”,位置安排如圖:其中兩個不去名字的原因是為了在運行的時候不影響視覺是的不適,即使界面美觀,但他們的存在又是有必有的如上圖中的當前時間和總時間下面顯示的時間值就是那兩個沒有任何名字的標簽顯示的,它們并沒不需要你輸入代碼但是在timer控件中的tick事件中將會用到它們,即讓它們顯示要顯示的時間。現在就來添加一個timer控件其默認名為timer1不需要改動,如果為了識別也可以改個名字,在后面還需要添加這種控件,這里的timer1的tick事件代碼如下:privatevoidtimer1_Tick(objectsender,EventArgse){try{this.label3.Text=axWindowsMediaPlayer1.currentMedia.getItemInfo("title");this.label4.Text=axWindowsMediaPlayer1.Ctlcontrols.currentPositionString;this.label6.Text=axWindowsMediaPlayer1.currentMedia.durationString;}catch(Exception){return;}}現在在窗體的右下角有加入兩個標簽控件其中一個命名為“當前時間”另一個不需要任何命名,用于顯示但前時間,而命名的那個只是為了在顯示當前時間時在前面起個說明作用,讓用戶看起來好理解而已,也適合人們視覺上的習慣。現在已經實現了播放器的基本功能了。需要塊進的時候可以拖動窗體上的播放位置控件嗎,這個空間按是windows控件上自帶的所以我就沒有另外添加了,調節播放位置的方法如下圖:在控制播放音量的時候方法和控制播放位置方法一樣只不過調節播放器位置控件是我另外添加的而已。

接下來就是智能關機的事了直接調用系統的shutdown.exe來實現計算機的關閉、重啟和用戶注銷。方法如下:首先進行引用usingSystem.Dinogistics;空間。在關機鍵的單擊事件中寫入代碼如下:if((MessageBox.Show("確實要關閉計算機?","關閉系統",MessageBoxButtons.YesNo,MessageBoxIcon.Question))==DialogResult.Yes){CmdPc("Shutdown.exe-s-f");}實現這個關機的代碼比較簡單,當實現定時關機是就又要用到timer組件了。在定時的時候我還選用了dateTimePicker組件進行定時關機的設置的時間設置,用了這個組件用戶還可以通過它查看日歷方法圖如下:如果你在設置時間時誤設置了錯誤的時間——就是你設置的時間比當前時間還小聚會彈出對話框提示你設置正確的時間,在設置好定時時間后,就單擊確定按鈕,然后彈出對話框提示你的定時設置成功(定時關機設置成功!),接下來就是等待關機了。到這里我的音樂播放器的設計過程已經完成了。

自我總結首先談談我對.net的粗淺認識吧,.NETFramework是微軟推出的一個全新概念。.NET的全稱為.NETFramework,又被譯為.NET框架。簡單地講,.NET代表了一個集合、一個環境、一個可以支持下一代internet可編程的平臺。.NET是生成和運行應用程序所依托的基礎平臺。微軟公司將.NET描述為“支持生成和運行下一代應用程序和XMLWebSerices的內部windows組件”,主要目標是建立一種企業服務的開放機制,這種機制是面向WebSericesde。我用的是C#編程語言設計的播放器,C#是編寫應用程序的編程語言之一;而visualstudio則是一種集成開發環境,再該環境下能夠方便、高效的編寫、調試、生成應用程序。.net技術-.NET的核心技術:

WebServices是.NET的核心技術。那什么是WebServices呢?正如Web是新一代的用戶與應用交互的途徑,XML是新一代的程序之間通訊的途徑一樣,WebServices是新一代的計算機與計算機之間一種通用的數據傳輸格式,可讓不同運算系統更容易進行數據交換。WebServices有以下幾點特性:Webservices允許應用之間共享數據;Webservices分散了代碼單元;基于XML這種internet數據交換的通用語言,實現了跨平臺、跨操作系統、跨語言。那微軟的ASP和Webservices究竟有什么不同呢,ASP仍然是一個集中式計算模型的產物,只不過是披著一層互聯網的外衣。但WebServices卻是一個迥然不同的精靈,它秉承“軟件就是服務”的真言,同時順應分布式計算模式的潮流。而它的存在形式又與以往軟件不同。這種組件模式,小巧、單一,對于開發人員來講,開發成本較低。

在這里指出Webservices不是微軟發明的,同樣也不屬于微軟專有。Webservices是一個開放的標準,和HTTP、XML、SOAP一樣。他們是一個工業標準而非微軟標準,WS-I是為了促進WebServices互通性的聯盟組織,最初是由IBM和微軟所發起,其它的成員包括BEASystem、惠普計算機(HP)、甲骨文(Oracle)、英特爾(Intel)和SUN計

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論