版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、xxxxxxxxxxxxxxxxxxxxxxxxxx 學(xué)院學(xué)院 本科畢業(yè)設(shè)計(論文) 題 目 ktv 點歌系統(tǒng) 管理歌曲模塊 指導(dǎo)教師 xxxx 職稱 (講師) 學(xué)生姓名 xxxxxx 學(xué)號 20073512130 專業(yè) 計算機(jī)系 班級 信管專升本班 院 (系) 電子信息工程學(xué)院 完成時間 2009 年 4 月 26 日 ktv 點歌系統(tǒng)點歌系統(tǒng) 管理歌曲模塊 摘 要 如今, “mp3”格式的音頻文件已然成為了人們的酷愛,所以我借此畢業(yè)設(shè)計之機(jī), 制作出一款屬于自己的 mp3 播放系統(tǒng)。 此設(shè)計以 windows media player 為模板,參照其設(shè)計思想和公共的網(wǎng)格類控件, 在實際的開
2、發(fā)過程中力求使其具有較強(qiáng)的實用性和靈活性,具備了 windows media player 強(qiáng)大全面的功能,但它外觀簡潔,操作簡便,可滿足一般性的音樂需求。 關(guān)鍵字 實用性和靈活性,外觀簡潔,操作簡便。 abstract now,the “.mp3”is the favorite,so i want to design a player of mp3 in my guraduation design. this design take the windows media player as the template, according to it designs the thought, t
3、rying hard for to design a more simple player of mp3 .although this sort of mp3 player doesnt have the powerful function like windows media player ,it can contented the need of general music and it also has the advantage likes brief outward and easy operating . this topic discusses how to use the gr
4、id control of vb to develop pratical software and how to use it conveniently and simply。 keywords: practical and active,brief outward ,easy operating 目 錄 摘 要.i abstractabstract.ii 1 1、緒 論.1 2 2、分 析.2 2.1 項目制作意義 .2 2.2 項目制作目標(biāo) .2 2.3 項目制作工具 .2 2.4 相關(guān)知識: .3 2.4.1 visual studio2005 .4 2.4.2 windows medi
5、a player .5 2.4.3 photoshop 7.0 .5 2.4.4 sql server .6 2.4.5 mp3 簡介 .7 3、系統(tǒng)設(shè)計.8 3.1 系統(tǒng)設(shè)計思路 .8 3.2 界面設(shè)計 .8 3.3 功能詳解及程序代碼與數(shù)據(jù)庫結(jié)構(gòu) .8 3.3.1 數(shù)據(jù)庫結(jié)構(gòu)與 e-r 圖 .8 3.3.2 程序定義 .10 3.3.3 程序詳解 .11 4、結(jié)果分析.23 4.1 效率分析 .23 4.2 可靠性分析 .23 4.3 置環(huán)境要求 .23 4.4 優(yōu)點 .23 4.5 缺點和不足 .23 總 結(jié).24 致 謝.25 參考文獻(xiàn).26 1 緒 論 如今, “.mp3”格式的音頻
6、文件已然成為了人們的酷愛。它音質(zhì)較好,占用 空間小,非常適宜于 pc,自誕生之日起就一直倍受人們傾愛。 1987 年德國的研究機(jī)構(gòu) iis(institute integrierte schaltungen)開始著手一 項聲音編碼及數(shù)字音頻廣播的計劃,名稱叫做 eureka eul47,即 mp3 的前身。之后, 這項計劃由 iis 與 erlangen 大學(xué)共同合作,開發(fā)出一套非常強(qiáng)大的算法,經(jīng)由 150 國際標(biāo)準(zhǔn)組織認(rèn)證之后,符合 iso-mpeg audio layer-3 標(biāo)準(zhǔn),就成為現(xiàn)在的 mp3。 自從“.mp3”誕生以來,也衍生出了許多 mp3 播放軟件,如:real playe
7、r,media player 等等著名產(chǎn)品,它們外形美觀大方,操作簡便,易使用,亦 受人們喜愛。于是我借此畢業(yè)設(shè)計之機(jī),借鑒 media player 的設(shè)計思想,取其大概, 亦想制作一款自己的 mp3 播放系統(tǒng)。 visual studio2005 是微軟公司出品的一個快速可視化程序開發(fā)工具軟件,借 助微軟在操作系統(tǒng)和辦公軟件的壟斷地位,vs.net 在短短的幾年內(nèi)風(fēng)靡全球。 vs.net 是極有和功能強(qiáng)大的軟件,主要表現(xiàn)在:所見即所得的界面設(shè)計,基于 對象的設(shè)計方法,極短的軟件開發(fā)周期,較易維護(hù)的生成代碼。 vs.net 程序語言具有許多優(yōu)秀的特性,用其設(shè)計應(yīng)用程序時有兩個基本特點: 可視
8、化設(shè)計和事件驅(qū)動編程。 基于以上原因,我決定采用 visual studio2005 作為本軟件的開發(fā)平臺。 此設(shè)計秉承 media player 的設(shè)計思想,汲取其設(shè)計思路,外形簡潔,操作更加 簡便,工作環(huán)境要求低,且易存放,易保存。 在設(shè)計中,我始終注意保持 media player 的基本樣式,注意保持其基本格式, 目的在于給人以熟悉的感覺,使人們在操作時更容易。 由于對 visual studio2005 是初學(xué),因此難免有疏漏,故此設(shè)計較為簡單,請 各位老師諒解。 2 分析 2.1 項目制作意義 1987 年德國的研究機(jī)構(gòu) iis(institute integrierte scha
9、ltungen)開始著手一 項聲音編碼及數(shù)字音頻廣播的計劃,名稱叫做 eureka eul47,即 mp3 的前身。之后, 這項計劃由 iis 與 erlangen 大學(xué)共同合作,開發(fā)出一套非常強(qiáng)大的算法,經(jīng)由 150 國際標(biāo)準(zhǔn)組織認(rèn)證之后,符合 iso-mpeg audio layer-3 標(biāo)準(zhǔn),就成為現(xiàn)在的 mp3。 自從“.mp3”誕生以來,也衍生出了許多 mp3 播放軟件,如:real player,media player 等等著名產(chǎn)品,它們外形美觀大方,操作簡便,易使用。 因此,設(shè)計簡潔明朗的 mp3 播放軟件就成為許多軟件公司的工作重點。 其實,我所制作的“ktv 點歌系統(tǒng)”,無
10、論從其技術(shù)含量還是從其市場要求度來 說,都不能滿足市場的要求,但是我更看重的是我在這次畢業(yè)設(shè)計所學(xué)到的知識。 在導(dǎo)師的教導(dǎo)下,學(xué)習(xí)了一門新的語言,學(xué)會了一項新知識,這一些都是我以前不 曾接觸到的,為我以后的學(xué)習(xí)和發(fā)展提供了莫大幫助。 所以我更看重的是學(xué)習(xí)的本質(zhì)的東西:即是否學(xué)到知識,嘗到什么知識,對以后個 人的發(fā)展有無益處,有何益處,只有這樣,我認(rèn)為才能夠把握住學(xué)習(xí)的主動權(quán),學(xué)到真 正的東西。 2.22.2 項目制作目標(biāo) 盡管 windows media player 功能強(qiáng)大,操作簡單,適合普通用戶的簡單需求,故 我們需要一種界面簡潔,操作簡單快捷的播放工具。 這一款”ktv 點歌系統(tǒng)” ,
11、它具有 windows media player 強(qiáng)大功能,其簡潔的界 面,快捷的操作,非常容易上手,且運行環(huán)境要求低,非常適合大多數(shù)用戶普通的音樂 需求。 2.32.3 項目制作工具 除了 visual studio2005 之外,當(dāng)前能夠編制 windows 應(yīng)用程序的可視化編程 工具還有很多,所針對的編程領(lǐng)域也各有側(cè)重,就微軟系列的可視化開發(fā)工具而言, 就有 vb,visualc+,visualj+,visual foxpro 等,其中 visual foxpro 是針對 數(shù)據(jù)庫編程的開發(fā)工具;visual c+是為專業(yè)程序設(shè)計員提供的開發(fā)工具,變量聲 明和定義嚴(yán)密,功能強(qiáng)大靈活,必須經(jīng)
12、過相當(dāng)?shù)呐Σ拍苷莆?;?vb 不支持虛類、 多態(tài)性和類的繼承,相對而言 vb 簡單易學(xué),變量定義不太嚴(yán)密,于非專業(yè)程序員而 言功能足夠強(qiáng)大,visual c+一樣也支持網(wǎng)絡(luò)編程和數(shù)據(jù)庫編程。 傳統(tǒng)的應(yīng)用程序開發(fā)過程可以分為三個明顯的步驟:編碼、編譯和測試。但是 visual studio2005 與傳統(tǒng)的語言不同,它使用交互式方法開發(fā)應(yīng)用程序,使三個步 驟之間不再有明顯的界限。 在大多數(shù)語言里,如果編寫代碼時發(fā)生了錯誤,則在開始編譯應(yīng)用程序時該錯誤 就會被編譯器捕獲。此時必須查找并改正該錯誤,然后再次進(jìn)行編譯,對每一個發(fā) 現(xiàn)的錯誤都要重復(fù)這樣的過程。visual studio2005 在編程
13、者輸入代碼時便進(jìn)行解 釋,即時捕獲并突出顯示大多數(shù)語法或拼寫錯誤??雌饋砭拖褚晃粚<以诒O(jiān)視代碼 的輸入。 除即時捕獲錯誤以外,visual studio2005 也在輸入代碼時部分地編譯該代碼。 當(dāng)準(zhǔn)備運行和測試應(yīng)用程序時,只需極短時間即可完成編譯。如果編譯器發(fā)現(xiàn)了錯 誤、則將錯誤突出顯示于代碼中。 2.42.4 相關(guān)知識: visual studio 2005(以前稱為“visual studio 代號 whidbey” ) 。該版本的 visual studio 與 .net framework 共同提供對類庫、公共語言運行庫 (clr)、編 程語言和集成開發(fā)環(huán)境 (ide) 的革新和增強(qiáng)
14、。此外,該產(chǎn)品還使開發(fā)人員能夠編寫 存儲過程,從而提供對 sql server 2005(以前稱為“sql server 代號 yukon” ) 的深入支持。 visual studio 代號“orcas” 。該版本的 visual studio 和 .net framework 為代號為“l(fā)onghorn”的 windows 操作系統(tǒng)提供工具支持。 生成 microsoft 開發(fā)人員工具的目的始終圍繞著使開發(fā)人員能夠利用 windows 平臺中的最新進(jìn)展這一主題。microsoft 提供支持即將面世的 sql server 和 windows 操作系統(tǒng)版本的工具,從而繼續(xù)發(fā)揚了這一傳統(tǒng)。 2
15、.4.1 visual studio2005 2000 年七月在美國奧蘭多舉行的專業(yè)開發(fā)者大會上,微軟公司展示了它最新的. net 體系,從多的發(fā)言人向大會介紹了.net 的特征和構(gòu)成。從此,軟件業(yè)界就開 始掀起了一股“.net”熱潮。通過.net, 微軟公司為人們提供了一種全新的開發(fā)平 臺,這個平臺將推動以新體系為基礎(chǔ)的協(xié)同 web 應(yīng)用開發(fā)。微軟公司推出 visual studio.net 的目的就是要推進(jìn)網(wǎng)絡(luò)應(yīng)用軟件的開發(fā),使用 visual studio.net 開發(fā) 系統(tǒng)可以編寫最簡單的基于 windows 的單層應(yīng)用軟件,也可以編寫 windows 下的客 戶/服務(wù)器多層應(yīng)用軟,無
16、論是為了 windows 還是為 web , visual studio 都在各個 層面上作了大量的工作。 visual studio.net 與以往版本相比發(fā)生了巨大的變化,這種變化主要來自兩個 方面:一是語言本身的改進(jìn)和.net 平臺的建立。無論是在網(wǎng)絡(luò)應(yīng)用還是在本地應(yīng)用 上,都對各種語言做了許多改進(jìn),特別是用嶄新的 c#語言代替了 j+。c#具有簡捷、 靈活、安全、面向?qū)ο蠛图嫒菪詮?qiáng)等許多優(yōu)點,是.net 中的旗幟語言。二是開發(fā)環(huán) 境的重大改變。首先,在一個開發(fā)環(huán)境中同時集成了 visual basic、visual c+、visual c#和 foxpro。其次,開發(fā)環(huán)境的適應(yīng)性大大增
17、強(qiáng)了,適用于快速 web 應(yīng)用軟件的開發(fā),可以輕松地運用 xml 和 web 服務(wù)進(jìn)行跨平臺計算,也可以快速開 發(fā)中間層商務(wù)組件。再次,調(diào)試功能增強(qiáng)了,它可以調(diào)試不同語言開發(fā)的應(yīng)用程序, 也可以調(diào)試工程,進(jìn)程和存儲過程。這些新特性使用戶的開發(fā)效率有了大幅度的提 高。 正如微軟公司首席執(zhí)行管鮑爾默所說:“microsoft.net 代表了一個集合、一個 環(huán)境、一個可以作為平臺支持下一代 internet 的可編程結(jié)構(gòu)。microsoft.net 的策略 是把因特網(wǎng)本身作為構(gòu)建新一代操作系統(tǒng)的基礎(chǔ),將因特網(wǎng)和操作系統(tǒng)的設(shè)計思想 合理延伸。 visual c#是微軟公司為它的 microsoft.n
18、et 計劃推出的核心編程語言。該語言 幾乎綜合了目前所有編程語言系統(tǒng)的優(yōu)點,并結(jié)合因特網(wǎng)的需要,增加了豐富的新 特性和增強(qiáng)功能。 visual c#語言面向?qū)ο蟮脑O(shè)計,可以用來構(gòu)建從高水平的商務(wù)目標(biāo)到體系標(biāo)準(zhǔn) 應(yīng)用程序的范圍寬廣的組件。使用 visual c#語言,程序員能夠迅速地建造提供充分 開拓計算和通信的工具和服務(wù)的新的 microsoft.net 平臺。c#語言的組成部分使用 簡單的 c#語言結(jié)構(gòu)體,能被轉(zhuǎn)化成 web 服務(wù),允許人們通過 internet 調(diào)用在任何操 作系統(tǒng)上運行的任何語言。 visual c#語言作為一種編程語言,具有以下幾個至關(guān)重要的特點: 兼容性; 靈活性;
19、簡單性; 面向?qū)ο螅?類開安全; 版本控制; visual c#具有 c,c+語言的靈活性和語言開發(fā)效率高的特點,同時又是網(wǎng) 絡(luò)服務(wù)語言,體現(xiàn)了許多新的現(xiàn)代化開發(fā)技術(shù)。因此我們完成底層平臺的調(diào)用和底 層平代碼的控制,實現(xiàn)跨語言、跨平臺的因特網(wǎng)遠(yuǎn)程調(diào)用、可以構(gòu)建復(fù)雜的商務(wù)系 統(tǒng)。 2.4.2 windows media player 這是微軟公司基于 directshow 基礎(chǔ)之上開發(fā)的媒體播放軟件。它提供最廣泛, 最具可操作性,最方便的多媒體內(nèi)容。你可以播放更多的文件類型,包括:windows media (即以前稱為 netshow 的), asf, mpeg-1, mpeg-2, wav,
20、 avi, midi, vod, au, mp3, 和 quicktime 文件。 所有這些都用一個操作簡單的應(yīng)用程序來完成。 favorites 菜單會讓你保存最 喜歡的網(wǎng)站,以后可以更快速,簡便的重放。這個菜單甚至還能直接讓你連接到很 酷的網(wǎng)站。windows media player 能播放從低帶寬的聲音文件到全屏的圖象文件, 你還可重設(shè)圖象窗口,甚至設(shè)成全屏,以便更好的播放。 當(dāng)你選定了聲像地址后,windows media player 會查看是否安裝了所需的 codec 文件。如果沒安裝,它會自動下載 codec,然后播放文件。網(wǎng)上的內(nèi)容(可 從不同的服務(wù)器或不同的媒體類型文件)在
21、播放時中間不需停頓,傳輸?shù)?windows media player 的內(nèi)容,會自動調(diào)整至最佳播放狀態(tài)。 2.4.3 photoshop 7.0 photoshop 7.0 是 adobe 公司最新版的圖像編輯軟件,它功能強(qiáng)大并且操作簡 便,被廣泛地應(yīng)用在圖像處理,繪畫,多媒體界面設(shè)計、網(wǎng)頁設(shè)計等領(lǐng)域。要掌握 它的操作,必須對它有個整體的認(rèn)識。 2.4.4 sql server sql server 是由 microsoft 開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(dbms),它最 初是由 microsoft、sybase 和 ashton-tate 三家公司共同開發(fā)的,并于 1988 年推出 了第一
22、個 os/2 版本。sql server 近年來不斷更新版本,1996 年,microsoft 推出 了 sql server 6.5 版本;1998 年,sql server 7.0 版本和用戶見面;sql server 2000 是 microsoft 公司于 2000 年推出的最新版本。 sql 是一門 ansi 的標(biāo)準(zhǔn)計算機(jī)語言,用來訪問和操作數(shù)據(jù)庫系統(tǒng)。sql 語句用于 取回和更新數(shù)據(jù)庫中的數(shù)據(jù),sql 可與數(shù)據(jù)庫程序協(xié)同工作,比如 ms access、db2、informix、ms sql server、oracle、sybase 以及其他數(shù)據(jù)庫系統(tǒng)。 存在著很多不同版本的 sql
23、 語言,但是為了與 ansi 標(biāo)準(zhǔn)相兼容,它們必須以 相似的方式共同地來支持一些主要的關(guān)鍵詞(比如 select、update、delete、insert、where 等等) 。 sql server 特點: 1真正的客戶機(jī)/服務(wù)器體系結(jié)構(gòu)。 2圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。 3豐富的編程接口工具,為用戶進(jìn)行程序設(shè)計提供了更大的選擇余地。 4sql server 與 windows nt 完全集成,利用了 nt 的許多功能,如發(fā)送和接受消 息,管理登錄安全性等。sql server 也可以很好地與 microsoft backoffice 產(chǎn)品 集成。 5具有很好的伸縮
24、性,可跨越從運行 windows 95/98 的膝上型電腦到運行 windows 2000 的大型多處理器等多種平臺使用。 6對 web 技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到 web 頁面上。 7sql server 提供數(shù)據(jù)倉庫功能,這個功能只在 oracle 和其他更昂貴的 dbms 中 才有。 sql server 2000 與以前版本相比較,又具有以下新特性 : 1支持 xml(extensive markup language,擴(kuò)展標(biāo)記語言) ; 2強(qiáng)大的基于 web 的分析 ; 3支持 ole db 和多種查詢 ; 4支持分布式的分區(qū)視圖 。 2.4.5 mp3 簡
25、介 mp3 的全名是 mpeg audio layer-3,簡單的說就是一種聲音文件的壓縮格式。 1987 年德國的研究機(jī)構(gòu) iis(institute integrierte schaltungen)開始著手一項聲 音編碼及數(shù)字音頻廣播的計劃,名稱叫做 eureka eul47,即 mp3 的前身。之后,這 項計劃由 iis 與 erlangen 大學(xué)共同合作,開發(fā)出一套非常強(qiáng)大的算法,經(jīng)由 150 國 際標(biāo)準(zhǔn)組織認(rèn)證之后,符合 iso-mpeg audio layer-3 標(biāo)準(zhǔn),就成為現(xiàn)在的 mp3。 iso/mpeg 音頻壓縮標(biāo)準(zhǔn)里包括了三個使用高性能音頻數(shù)據(jù)壓縮方法的感知編碼 方案 (
26、perceptual coding schemes)。按照壓縮質(zhì)量(每 bit 的聲音效果)和編碼方 案的復(fù)雜程度分別是 layer 1、layer 2、layer 3。 所有這三層的編碼采用的基本 結(jié)構(gòu)是相同的。它們在采用傳統(tǒng)的頻譜分析和編碼技術(shù)的基礎(chǔ)上還應(yīng)用了子帶分析 和心理聲學(xué)模型理論。也就是通過研究人耳和大腦聽覺神經(jīng)對音頻失真的敏感度, 在編碼時先分析聲音文件的波形,利用濾波器找出噪音電平( noise level ),然后 濾去人耳不敏感的信號,通過矩陣量化的方式將余下的數(shù)據(jù)每一位打散排列,最后 編碼形成 mpeg 的文件。而音質(zhì)聽起來與 cd 相差不大。 mp3 的好處在于大幅降低
27、數(shù)字聲音文件的容量,而不會破壞原來的音質(zhì)。以 cd 音質(zhì)的 wave 文件來說,如抽樣分辨率為 l6bit,抽樣頻率 44.1khz,聲音模式為立 體聲,那么存儲 l 秒鐘 cd 音質(zhì)的 wave 文件,必須要用 l6 bit * 44100 hz * 2 stereo = 1411200 bit,也就是相當(dāng)于 1411.2kbit 的存儲容量,存儲介質(zhì)的負(fù)擔(dān)相 當(dāng)大。不過通過 mp3 格式壓縮后,文件便可壓縮為原來的 1/10 到 l/12,每 l 秒鐘 的 mp3 只需大約 112-128kbit 就可以了。 3系統(tǒng)設(shè)計 3.13.1 系統(tǒng)設(shè)計思路 1. 由 media player 控件
28、模板; 2. 用 photoshop 7.0 處理圖片; 3. 用 winform 添加代碼、控件; 4. 用 sql server 存儲數(shù)據(jù); 5. 完成設(shè)計。 3.23.2 界面設(shè)計 1由 photoshop 7.0 處理各界面需要的圖片; 2搭建歌曲播放頁選歌列表及排序功能; 3. 搭建歌曲播放頁的 media player 控件模版; 4. 搭建歌曲播放頁的刷新 移除歌曲、全部移除功能按鈕。 3.33.3 功能詳解及程序功能詳解及程序代碼代碼與數(shù)據(jù)庫結(jié)構(gòu)與數(shù)據(jù)庫結(jié)構(gòu) 3.3.1 數(shù)據(jù)庫結(jié)構(gòu)與 e-r 圖 1、music_select (歌曲選擇中間表)如表 1-1 所示 列名列名類型類
29、型大小大小備注備注 idint4主鍵、自增長 musicidvarchar50歌信息曲 id playvarchar50播放序號 datetimedatetime8添加日期 表 1-1 2、music_property (歌曲信息存放表)表 1-2 所示 列名列名類型類型大小大小備注備注 idint4主鍵、自增長 concert_namevarchar50歌手姓名 chinese_namevarchar50歌曲名稱 english_namevarchar50歌曲拼音 music_typevarchar50歌曲類型 music_addressvarchar500歌曲存放路徑 lyrics_add
30、ressvarchar500歌詞存放路徑 remarksvarchar1000備注 datetimedatetime8添加時間 表 1-2 3、歌曲選擇中間表 e-r 圖 如圖 1-3 所示 表 1-3 4、伴奏信息存放表 e-r 圖 如圖 1-4 所示 表 1-4 3.3.2 程序定義 為便于下面分析程序的方便,故把主要函數(shù)名單獨列出 播放列表 del_no_click 移除單個歌曲播放列目 del_click 移除全部播放列目 select_click 刷新播放列表 msgrid_rowheadermousedoubleclick 選擇歌曲加入播放列表 msgridview_rowhead
31、ermousedoubleclick 選擇歌曲播放 3.3.3 程序詳解 程序設(shè)計流程圖 cbaserlue 主要類詳解 /獲取數(shù)據(jù)庫連接配置 public static string constring= configurationmanager.appsettingsmusic.tostring(); /傳入?yún)?shù)返回數(shù)據(jù)集 public static dataset executedataset(string executesql, commandtype cmdtype, sqlparameter dbparameter, string returntablename, int star
32、tindex, int pagesize) /獲取配置連接 sqlconnection conn = new sqlconnection(constring); /執(zhí)行sql語句 sqldataadapter ad = new sqldataadapter(executesql, new sqlconnection(constring); ad.selectcommand.commandtype = cmdtype; if (dbparameter != null) /所循環(huán)傳入的參數(shù) foreach (sqlparameter ter in dbparameter) sqlparameter
33、 meter = new sqlparameter(); meter = new sqlparameter(ter.parametername, ter.sqldbtype); meter.value = ter.value; ad.selectcommand.parameters.add(meter); /構(gòu)建dataset結(jié)構(gòu) dataset st = new dataset(); if (startindex = 0 else /填充數(shù)據(jù) ad.fill(st, startindex, pagesize, returntablename); /返回dataset return st; /
34、添刪改操作 public static int execoutnonquery( string executesql, commandtype type, sqlparameter dbparameter) /獲取配置連接 sqlconnection con = new sqlconnection(constring); /執(zhí)行sql語句 sqlcommand cmd = new sqlcommand(executesql, con); cmd.commandtype = type; /打開數(shù)據(jù)庫 con.open(); /設(shè)置數(shù)據(jù)庫回滾事務(wù) sqltransaction tion = con
35、.begintransaction(tion); cmd.transaction = tion; int retur = 0; /錯誤處理 try if (dbparameter != null) /所循環(huán)傳入的參數(shù) foreach (sqlparameter ter in dbparameter) sqlparameter meter = new sqlparameter(); meter = new sqlparameter(ter.parametername, ter.sqldbtype); meter.value = ter.value; cmd.parameters.add(mete
36、r); /返回執(zhí)行語句受影響的條目數(shù) retur = cmd.executenonquery(); /提交sql事務(wù) tion.commit(); catch (exception ex) /回滾事務(wù) tion.rollback(); throw ex; finally /關(guān)閉conn連接 con.close(); /返回影響條目數(shù) return retur; /返回唯一的匹配值 public static int execoutscalar(string executesql, commandtype type, sqlparameter dbparameter) /獲取配置連接 sqlco
37、nnection con = new sqlconnection(constring); /執(zhí)行sql語句 sqlcommand cmd = new sqlcommand(executesql, con); cmd.commandtype = type; /打開數(shù)據(jù)連接 con.open(); int retur = 0; /錯誤處理 try if (dbparameter != null) /所循環(huán)傳入的參數(shù) foreach (sqlparameter ter in dbparameter) sqlparameter meter = new sqlparameter(); meter = n
38、ew sqlparameter(ter.parametername, ter.sqldbtype); meter.value = ter.value; cmd.parameters.add(meter); /返回匹配記錄 retur = int.parse(cmd.executescalar().tostring(); catch (exception ex) throw ex; finally /關(guān)閉數(shù)據(jù)庫連接 con.close(); /返回匹配結(jié)果 return retur; 播放頁面 從歌曲列表向播放列表選取歌曲 程序詳解 鼠標(biāo)雙擊左側(cè)歌曲列表的黑色箭頭處,提示成功后歌曲將添加到右側(cè)播
39、放列表。 如果該歌曲已添加過系統(tǒng)將會彈出提示警告“該歌曲已添加過” private void msgrid_rowheadermousedoubleclick(object sender, datagridviewcellmouseeventargs e) /標(biāo)題事件 /獲取歌曲列表的行索引 int rows = msgrid.currentrow.index; /根據(jù)行索引獲取隱藏 id 列的數(shù)據(jù) string str = msgrid.rowsrows.cellsid.value.tostring(); /根據(jù)獲取的 id 值查詢該歌曲是否添加過 if (cmusicplayrlue.ge
40、tconstmusicselect(str) != 0)/如果有 記錄返回值!=0 否則返回值=0 /給出提示框 messagebox.show(該歌曲您已添加過,請重新選擇!, 提 示信息); return;/返回 else /如果沒有添加過 /向播放數(shù)據(jù)表插入獲取的歌曲信息的 id if (cmusicplayrlue.getinmusicselect(str) != 0) /判斷 是否插入成功如果成功返回值!=0 失敗返回值=0 /給出提示框 messagebox.show(歌曲添加成功!, 提示信息); /刷新播放列表,為了及時得到數(shù)據(jù)庫最新數(shù)據(jù) msgridview.datasour
41、ce = cmusicplayrlue.getselectmusic().tablesselectmusic; else /如果=0 那就是失敗了 /給出提示框 messagebox.show(歌曲添加失敗,請重試!, 提示信 息); return; /返回 從播放列表中選取歌曲播放 程序詳解 鼠標(biāo)雙擊左側(cè)播放列表的黑色箭頭處,歌曲將自動播放。 private void msgridview_rowheadermousedoubleclick(object sender, datagridviewcellmouseeventargs e) /標(biāo)題事件 /獲取播放列表行的索引 int rows
42、= msgridview.currentrow.index; /根據(jù)獲取的行索引去獲取隱藏 selectid 的值 string str = msgridview.rowsrows.cellsselectid.value.tostring(); /利用隱藏的 label1 控件去儲存 selectid 的值 label1.text = str; /創(chuàng)建 datatable 數(shù)據(jù)表 datatable table = new datatable(); /將從數(shù)據(jù)庫取的的數(shù)據(jù)賦給剛創(chuàng)建的 datatable table = cmusicplayrlue.getmusic(str).tablesse
43、t; datarow row = table.rows0;/取出數(shù)據(jù)項 /傳送給播放器播放歌曲的路徑 axwindowsmediaplayer1.url = rowmusic_address.tostring(); /歌詞 if (rowlyrics_address.tostring() != ) lrcurl = rowlyrics_address.tostring(); timer1.enabled = true; 移除播放列表 程序詳解 單擊移除歌曲將按播放列表中選中的行去移除同時歌曲列表不受影響 單擊移除歌曲將按播放列表中歌曲全部移除,歌曲列表不受影響 單擊刷新列表時將刷新播放列表 p
44、rivate void del_no_click(object sender, eventargs e) /按鈕事件 /獲取播放列表的索引 int rows = msgridview.currentrow.index; /根據(jù)播放列表的索引取出隱藏控件selectid的值 string str = msgridview.rowsrows.cellsselectid.value.tostring(); /按取出的selectid值去刪除歌曲列表選中的行 if (cmusicplayrlue.getdelmusicselect(str) != 0)/判斷是否刪除 成功!=0 成功否則失敗 /給出提
45、示框 messagebox.show(歌曲刪除成功!, 提示信息); /刷新播放列表,為了及時得到數(shù)據(jù)庫最新數(shù)據(jù) msgridview.datasource = cmusicplayrlue.getselectmusic().tablesselectmusic; else /失敗 /給出提示框 messagebox.show(歌曲刪除失敗,請重試!, 提示信息); return; /返回 private void del_click(object sender, eventargs e) /按鈕事件 /刪除所有播放列表數(shù)據(jù) if (cmusicplayrlue.getdel() != 0)/判斷是否刪除成功!=0 成功否 則失敗 /給出提示框 messagebox.show(歌曲全部刪除成功!, 提示信息); /刷新播放列表,為了及時得到數(shù)據(jù)庫最新數(shù)據(jù) msgridview.datasource = cmusicplayrlue.getselectmusic().tablesselectmusic; else /刷新播放列表,為了及時得到數(shù)據(jù)庫最新數(shù)據(jù) messagebox
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年網(wǎng)絡(luò)直播活動拍攝與傳播合作協(xié)議書3篇
- 2024年財務(wù)軟件采購與技術(shù)支持合同3篇
- 2024年離婚時房產(chǎn)處理協(xié)議
- 醫(yī)療器械行業(yè)產(chǎn)品安全檢測方案
- 健康行業(yè)營銷實踐總結(jié)
- 電商業(yè)務(wù)流程培訓(xùn)心得
- 數(shù)學(xué)班主任期末工作總結(jié)助力學(xué)生數(shù)學(xué)成績提升
- 2025版全球供應(yīng)鏈管理合作協(xié)議樣本在線閱覽3篇
- 2025年電梯設(shè)備安裝與運營管理合同
- 保健品行業(yè)業(yè)務(wù)員工作總結(jié)
- DL-T 2231-2021 油紙絕緣電力設(shè)備頻域介電譜測試導(dǎo)則
- 員工月度績效考核管理辦法
- 2023年云南保山電力股份有限公司招聘筆試題庫及答案解析
- GB/T 41904-2022信息技術(shù)自動化基礎(chǔ)設(shè)施管理(AIM)系統(tǒng)要求、數(shù)據(jù)交換及應(yīng)用
- GB/T 41908-2022人類糞便樣本采集與處理
- GB/T 3745.1-1983卡套式三通管接頭
- 信息系統(tǒng)運維服務(wù)方案
- 簡支梁、懸臂梁撓度計算程序(自動版)
- 統(tǒng)編版小學(xué)四年級語文上冊五六單元測試卷(附答案)
- 商票保貼協(xié)議
- 高支模技術(shù)交底(新版)
評論
0/150
提交評論