小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文_第1頁
小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文_第2頁
小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文_第3頁
小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文_第4頁
小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 計(jì)算機(jī)論文_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

本科畢業(yè)設(shè)計(jì)論文題目小型點(diǎn)歌管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)院系計(jì)算機(jī)科學(xué)與工程學(xué)院_專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班級090602學(xué)生姚雙雙學(xué)號090602130指導(dǎo)教師茹媛2013年6月西安工業(yè)大學(xué)畢業(yè)設(shè)計(jì)(論文)任務(wù)書院(系)計(jì)算機(jī)學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班090602姓名姚雙雙學(xué)號0906021301畢業(yè)設(shè)計(jì)(論文)題目點(diǎn)歌管理系統(tǒng)2題目背景和意義隨著人民生活水平的提高,娛樂業(yè)在服務(wù)行業(yè)中占有越來越重要的地位,能夠在娛樂行業(yè)激勵(lì)的競爭中脫穎而出,獨(dú)樹一幟已成為每位娛樂經(jīng)營者所追求的目標(biāo)。其中去KTV唱歌是深受廣大消費(fèi)者喜愛的娛樂活動(dòng)。該系統(tǒng)能方便顧客進(jìn)行選歌。給顧客提供舒適的環(huán)境。吸引顧客來消費(fèi),提高營業(yè)而流量。另一方面能幫助系統(tǒng)管理者管理歌曲,提高歌曲點(diǎn)唱的效率。3設(shè)計(jì)論文的主要內(nèi)容(理工科含技術(shù)指標(biāo))本系統(tǒng)前端開發(fā)工具采用目前較流行的VISUALC60,后臺數(shù)據(jù)庫系統(tǒng)SOLSERVER2005,該系統(tǒng)的運(yùn)行平臺是WINDOWS。本系統(tǒng)總體分為選歌功能,播放操作,管理功能三個(gè)部分。選歌功能實(shí)現(xiàn)多種方式的點(diǎn)歌;播放操作主要實(shí)現(xiàn)對當(dāng)前播放歌曲的音量,播放模式;管理功能實(shí)現(xiàn)對數(shù)據(jù)庫的操作4設(shè)計(jì)的基本要求及進(jìn)度安排(含起始時(shí)間、設(shè)計(jì)地點(diǎn))本次課題從2011年2月20日開始,在校內(nèi)完成,具體的進(jìn)度安排如下第13周查閱書籍資料,學(xué)習(xí)相關(guān)軟件,準(zhǔn)備開題報(bào)告。第4周分析設(shè)計(jì)任務(wù),設(shè)計(jì)總體方案。第512周模塊設(shè)計(jì)、完成3000個(gè)單詞以上的相關(guān)外文資料翻譯;中期總結(jié)。第1315周模塊設(shè)計(jì)、系統(tǒng)調(diào)試。第1617周系統(tǒng)測試、撰寫畢業(yè)論文。第18周對論文排版和打印,制光盤;論文答辯。5畢業(yè)設(shè)計(jì)(論文)的工作量要求實(shí)驗(yàn)(時(shí)數(shù))或?qū)嵙?xí)(天數(shù))上機(jī)300學(xué)時(shí)圖紙(幅面和張數(shù))其他要求指導(dǎo)教師簽名2012年12月07日學(xué)生簽名年月日系(教研室)主任審批年月日說明1本表一式二份,一份由學(xué)生裝訂入附件冊,一份教師自留。2帶項(xiàng)可根據(jù)學(xué)科特點(diǎn)選填。COMMENTU1仿照模板論文,以及任務(wù)書的3設(shè)計(jì)論文的主要內(nèi)容來寫。摘要隨著人們生活質(zhì)量的提高,對精神生活的追求日益迫切,各種娛樂活動(dòng)應(yīng)運(yùn)而生酒吧、KTV等娛樂業(yè)在服務(wù)行業(yè)中占有越來越重要的地位,點(diǎn)歌系統(tǒng)是為KTV場所開發(fā)的視頻歌曲點(diǎn)唱軟件。該系統(tǒng)能方便顧客進(jìn)行點(diǎn)歌,給顧客提供舒適的環(huán)境,吸引顧客來消費(fèi),提高營業(yè)額流量。另一方面能幫助系統(tǒng)管理員管理歌曲,提高KTV點(diǎn)唱的效率。本系統(tǒng)是模擬KTV開發(fā)一個(gè)點(diǎn)歌管理系統(tǒng),前端開發(fā)工具采用VISUALC60,后臺數(shù)據(jù)庫系統(tǒng)SOLSERVER2005。本系統(tǒng)總體分為選歌功能,播放操作,管理功能三個(gè)部分。選歌功能實(shí)現(xiàn)多種方式的點(diǎn)歌;播放操作主要實(shí)現(xiàn)對當(dāng)前播放歌曲的音量,播放模式;管理功能實(shí)現(xiàn)對數(shù)據(jù)庫的操作關(guān)鍵詞ABSTRACTASPEOPLELIFEQUALITYIMPROVEMENTANDPURSUINGFORTHELIFEOFTHEMINDISIMPERATIVE,ALLKINDSOFENTERTAINMENTARISESATTHEHISTORICMOMENTBARS,KTVETCRECREATIONINSERVICEINDUSTRYPLAYSAMOREANDMOREIMPORTANTPOSITION,INCREASINGLYBYPUTONTHEAGENDAHOWEVER,WEHAVETOOURNEWGENERATIONENTERTAINMENT“DAWDLER“HUMANBASEDDEMANDALSORESTRICTIVE,FORENTERTAINMENTFORTHEOPERATOR,ANDCANMEETTHEDEMANDOFTHECONSUMERSINTHEFIERCECOMPETITION,UNIQUEANDALSOSTREAMLINEPERSONNEL,LOWEROPERATINGCOSTISALSOPRETTYNECESSARYTHESONGSYSTEMISDEVELOPEDFORKTVPLACESVIDEOSONGSPOINTSINGSOFTWARETHESYSTEMCANCONVENIENTCUSTOMERINTHESONG,GIVECUSTOMERSWITHCOMFORTABLEENVIRONMENT,ATTRACTCUSTOMERSTOCONSUME,IMPROVESALESFLOWONTHEOTHERHANDCANHELPSYSTEMADMINISTRATORMANAGEMENT,IMPROVETHEKTVSINGSONGSTHEEFFICIENCYPOINTTHISSYSTEMISSIMULATEDKTVDEVELOPASONGMANAGEMENTSYSTEMDESIGNGUIDINGIDEOLOGYISEVERYTHINGFORUSERSCONSIDER,INTERFACESHOULDBEAUTIFULANDEASY,SIMPLEOPERATION,ANDASFARASPOSSIBLEASAUSEOFMANAGEMENTSYSTEMSHOULDHAVEGOODFAULTTOLERANCEINERRORIS,CANTIMELYWARNING,SOTHATUSERSTORECTIFYINVIEWOFTHISSYSTEMENTERTAINING,BUTITNEEDSTOBEGOODSONGINTERFACETHESEFUNCTIONSOFTHEMODULEISSYSTEMOFMAINPROBLEMSTOSOLVETHROUGHTHEORIGINALREQUIREMENTANALYSIS,REVISING,UNTILCUSTOMERSATISFACTIONIMPROVEMENTOFFEASIBLESYSTEMFORMEDKEYWORDSTHEKTVSINGSONGSYSTEM,VIDEOSONGSPOINTCORRECTION,IMPROVEMENT第一章緒論COMMENTU2展開介紹一下點(diǎn)歌系統(tǒng)的前世今生11課題背景隨著人們生活水平的提高,人們的業(yè)余生活也發(fā)生了巨大的變化,去KTV唱歌便成了很多人在工作之余的娛樂休閑方式。而傳統(tǒng)歌廳中的設(shè)施在逐漸地老化,由于LD機(jī)器的停產(chǎn)和LD片源全部依賴于進(jìn)口,成本較高,造出用戶經(jīng)濟(jì)上的負(fù)擔(dān)過重,而且老歌特別多,新歌很少,點(diǎn)歌方式也很原始,速度很慢,而且經(jīng)常出現(xiàn)搶歌現(xiàn)象,這樣就給人們的休閑情緒蒙上了一層陰影。隨著科學(xué)的發(fā)展和信息時(shí)代的到來,利用高新技術(shù)來實(shí)現(xiàn)點(diǎn)歌系統(tǒng)娛樂城設(shè)備的革命性建設(shè)是完全可能的,而且可以滿足消費(fèi)者的多種需求。本文將使用VC制作一個(gè)KTV點(diǎn)播系統(tǒng)以實(shí)現(xiàn)人們對于點(diǎn)歌系統(tǒng)的需求。12課題研究現(xiàn)狀點(diǎn)歌系統(tǒng)從很早以前就開始進(jìn)行研發(fā)與應(yīng)用,經(jīng)過多年的經(jīng)驗(yàn)摸索,不斷地完善改進(jìn)和升級,使得它更安全、更穩(wěn)定、更完善。無論夜總會(huì)型,還是量販?zhǔn)叫偷腒TV都可以使用,該系統(tǒng)加上優(yōu)質(zhì)的歌庫,并與點(diǎn)歌輔助工具和外圍歌廳設(shè)備一起使用時(shí),可稱之為一套功能強(qiáng)大、可靠性高、實(shí)用性好、畫優(yōu)音美的點(diǎn)歌系統(tǒng),絕對領(lǐng)導(dǎo)著KTV點(diǎn)歌設(shè)備的新潮流。全套系統(tǒng)是架構(gòu)在計(jì)算機(jī)網(wǎng)絡(luò)上的,由電腦來管理,極大地提高了經(jīng)營效率。該系統(tǒng)從歌曲錄制編輯、歌曲庫的生成、點(diǎn)歌軟件的功能、界面的多樣性和美觀性、客人的使用人性化、前后臺管理的多樣性和方便性、與各種外圍點(diǎn)歌設(shè)備的結(jié)合、有各類歌曲的提供等方面,形成了完整的解決方案,是一套集成的全面先進(jìn)的系統(tǒng)。第二章系統(tǒng)開發(fā)環(huán)境及相關(guān)技術(shù)21系統(tǒng)開發(fā)環(huán)境本系統(tǒng)主要應(yīng)用了ADO數(shù)據(jù)庫連接,ADO對象操作數(shù)據(jù)庫的技術(shù),開發(fā)此點(diǎn)歌管系統(tǒng)所需用到的軟件環(huán)境如下1操作系統(tǒng)WINDOWSXP2數(shù)據(jù)庫SQLSERVER2005。SQLSERVER2005不僅為不同規(guī)模的企業(yè)提供快速構(gòu)建各類商業(yè)只能解決方案,還具有較好系統(tǒng)的集成性及對日常任務(wù)的自動(dòng)化管理能力。鑒于以上優(yōu)點(diǎn),選擇SQLSERVER2005作為數(shù)據(jù)庫管理系統(tǒng)。3編譯工具VISUALC60編譯速度快,程序調(diào)試方便。它引入MFC類和一些實(shí)用開發(fā)工具,降低了編碼的復(fù)雜性,便于快速開發(fā)出點(diǎn)歌管理系統(tǒng)。21ADO技術(shù)簡介ADO(ACTIVEDATAOBJECT,活動(dòng)數(shù)據(jù)對象)實(shí)際上是一種基于COM(組件對象模型)的自動(dòng)化接口技術(shù),并以O(shè)LEDB(對象連接和鑲?cè)氲臄?shù)據(jù)庫)為基礎(chǔ),經(jīng)過OLEDB精心包裝后的數(shù)據(jù)庫訪問技術(shù),利用它可以快速的創(chuàng)建數(shù)據(jù)庫應(yīng)用程序。ADO提供了一組非常簡單,將一般通用的數(shù)據(jù)訪問細(xì)節(jié)進(jìn)行封裝的對象。由于ODBC數(shù)據(jù)源也提供了一般的OLEDBPRIVIDER,所以ADO不僅可以應(yīng)用自身的OLEDBPRIVIDER,而且還可以應(yīng)用所有的ODBC驅(qū)動(dòng)程序。211用ADO訪問數(shù)據(jù)元的特點(diǎn)1易于使用,可以說這是ADO最重要的特點(diǎn)之一。2ADO是高層數(shù)據(jù)庫訪問技術(shù),相對與ODBC來說,具有面性對象的特點(diǎn)。同時(shí),在ADO對象結(jié)構(gòu)中,對象與對象之間的層次結(jié)構(gòu)不適非常明顯,比如,在應(yīng)用程序中如果要使用記錄集對象,不一定要先建立連接、會(huì)話對象,如果需要就可以直接構(gòu)造記錄集對象。總是,已經(jīng)沒有必要去關(guān)心對象的構(gòu)造層次和構(gòu)造順序了。3可以訪問多種數(shù)據(jù)源。和OLEDB一樣,使應(yīng)用程序具有很好的通用性和靈活性。4訪問數(shù)據(jù)源效率高。5方便的WEB應(yīng)用。ADO可以以ACTIVEX控件的形式出現(xiàn),這就大大方便了WEB應(yīng)用程序的編制。6技術(shù)編程接口豐富。ADO支持VISUALC、VISUALBASIC、VBS、JS等。212ADO的對象CONNECTION用于表示和數(shù)據(jù)源的連接,以及處理一些命令和事務(wù)。COMMAND用于執(zhí)行某些命令來進(jìn)行諸如查詢、修改數(shù)據(jù)庫結(jié)構(gòu)的操作。RECORDSET用于處理數(shù)據(jù)源的表格集,它是在表中修改、檢索數(shù)據(jù)的最主要的方法。FIELD描述數(shù)據(jù)集中的列信息。PARAMETER用于對傳遞給數(shù)據(jù)源的命令賦參數(shù)值。ERROR用于承載所產(chǎn)生所無的詳細(xì)信息。PROPERTY通過屬性,每個(gè)ADO對象借此來讓用戶描述和控制自身的行為。SET集合是一種可以方便的包含其他特殊類型對象的對象類型。ADO提供4種類型的集合CONNECTION對象具有ERROR集合。COMMAND對象具有PARAMETER集合。RECORDSET對象具有FIELDS集合。CONNECTION、COMMAND、RECORDSET、FIELD對象都具有PROPERTY集合。EVENT事件模型是異步操作的基礎(chǔ),這是ADO20引進(jìn)的新特性。213在VISUALC中使用ADO基本流程1初始化COM庫,引入ADO庫定義文件2用CONNECTION對象連接數(shù)據(jù)庫3利用建立好的連接,通過CONNECTION、COMMAND對象執(zhí)行SQL命令,或利用RECORDSET對象取得結(jié)果記錄集進(jìn)行查詢、處理。4使用完畢后關(guān)閉連接釋放對象。214ADO常用的數(shù)據(jù)庫連接方法1通過JET數(shù)據(jù)庫引擎對ACCESS2000數(shù)據(jù)庫的連接M_PCONNECTIONOPEN“PROVIDERMICROSOFTJETOLEDB40DATASOURCECTESTMDB“,“,“,ADMODEUNKNOWN2通過DSN數(shù)據(jù)源對任何支持ODBC的數(shù)據(jù)庫進(jìn)行連接M_PCONNECTIONOPEN“DATASOURCEADOTESTUIDSAPWD“,“,“,ADMODEUNKNOWN/M_PCONNECTIONOPEN“DSNTEST“,“,“,0/連接叫作TEST的ODBC數(shù)據(jù)源3不通過DSN對SQLSERVER數(shù)據(jù)庫進(jìn)行連接M_PCONNECTIONOPEN“DRIVERSQLSERVERSERVER127001DATABASEVCKBASEUIDSAPWD139“,“,“,ADMODEUNKNOWN其中SERVER是SQL服務(wù)器的名稱,DATABASE是庫的名稱215ADO接口簡介ADO庫包含三個(gè)基本接口_CONNECTIONPTR接口、_COMMANDPTR接口和_RECORDSETPTR接口。_CONNECTIONPTR接口返回一個(gè)記錄集或一個(gè)空指針。通常使用它來創(chuàng)建一個(gè)數(shù)據(jù)連接或執(zhí)行一條不返回任何結(jié)果的SQL語句,如一個(gè)存儲過程。使用_CONNECTIONPTR接口返回一個(gè)記錄集不是一個(gè)好的使用方法。對于要返回記錄的操作通常用_RECORDSERPTR來實(shí)現(xiàn)。用_CONNECTIONPTR操作時(shí)要想得到記錄條數(shù)得遍歷所有記錄,而用_RECORDSERPTR時(shí)不需要。_COMMANDPTR接口返回一個(gè)記錄集。它提供了一種簡單的方法來執(zhí)行返回記錄集的存儲過程和SQL語句。在使用_COMMANDPTR接口時(shí),你可以利用全局_CONNECTIONPTR接口,也可以在_COMMANDPTR接口里直接使用連接串。如果你只執(zhí)行一次或幾次數(shù)據(jù)訪問操作,后者是比較好的選擇。但如果你要頻繁訪問數(shù)據(jù)庫,并要返回很多記錄集,那么,你應(yīng)該使用全局_CONNECTIONPTR接口創(chuàng)建一個(gè)數(shù)據(jù)連接,然后使用_COMMANDPTR接口執(zhí)行存儲過程和SQL語句。_RECORDSETPTR是一個(gè)記錄集對象。與以上兩種對象相比,它對記錄集提供了更多的控制功能,如記錄鎖定,游標(biāo)控制等。同_COMMANDPTR接口一樣,它不一定要使用一個(gè)已經(jīng)創(chuàng)建的數(shù)據(jù)連接,可以用一個(gè)連接串代替連接指針賦給_RECORDSETPTR的CONNECTION成員變量,讓它自己創(chuàng)建數(shù)據(jù)連接。如果你要使用多個(gè)記錄集,最好的方法是同COMMAND對象一樣使用已經(jīng)創(chuàng)建了數(shù)據(jù)連接的全局_CONNECTIONPTR接口,然后使用_RECORDSETPTR執(zhí)行存儲過程和SQL語句。22SQLSERVER2005簡介SQLSERVER2005是一個(gè)全面的數(shù)據(jù)庫平臺,使用集成的商業(yè)智能BI工具提供了企業(yè)級的數(shù)據(jù)管理。SQLSERVER2005數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。SQLSERVER2005數(shù)據(jù)引擎是本企業(yè)數(shù)據(jù)管理解決方案的核心。此外SQLSERVER2005結(jié)合了分析、報(bào)表、集成和通知功能。這使您的企業(yè)可以構(gòu)建和部署經(jīng)濟(jì)有效的BI解決方案,幫助您的團(tuán)隊(duì)通過記分卡、DASHBOARD、WEBSERVICES和移動(dòng)設(shè)備將數(shù)據(jù)應(yīng)用推向業(yè)務(wù)的各個(gè)領(lǐng)域。與MICROSOFTVISUALSTUDIO、MICROSOFTOFFICESYSTEM以及新的開發(fā)工具包(包括BUSINESSINTELLIGENCEDEVELOPMENTSTUDIO)的緊密集成使SQLSERVER2005與眾不同。無論您是開發(fā)人員、數(shù)據(jù)庫管理員、信息工作者還是決策者,SQLSERVER2005都可以為您提供創(chuàng)新的解決方案,幫助您從數(shù)據(jù)中更多地獲益。MICROSOFT仔細(xì)傾聽了您的反饋,并對行業(yè)進(jìn)行了認(rèn)真研究,全世界的MICROSOFT研究團(tuán)隊(duì)共同努力,經(jīng)過創(chuàng)造性思索才最終向您奉獻(xiàn)出這一引入了上百種新增功能或改進(jìn)功能的SQLSERVER2005。這些功能將有助于您在以下三個(gè)主要方面提高業(yè)務(wù)企業(yè)數(shù)據(jù)管理SQLSERVER2005針對行業(yè)和分析應(yīng)用程序提供了一種更安全可靠和更高效的數(shù)據(jù)平臺。SQLSERVER的最新版本不僅是迄今為止SQLSERVER的最大發(fā)行版本,而且是最為可靠安全的版本。開發(fā)人員生產(chǎn)效率SQLSERVER2005提供了一種端對端的開發(fā)環(huán)境,其中涵蓋了多種新技術(shù),可幫助開發(fā)人員大幅度提高生產(chǎn)效率。商業(yè)智能SQLSERVER2005的綜合分析、集成和數(shù)據(jù)遷移功能使各個(gè)企業(yè)無論采用何種基礎(chǔ)平臺都可以擴(kuò)展其現(xiàn)有應(yīng)用程序的價(jià)值。構(gòu)建于SQLSERVER2005的BI解決方案使所有員工可以及時(shí)獲得關(guān)鍵信息,從而在更短的時(shí)間內(nèi)制定更好的決策。23C/S模式結(jié)構(gòu)簡介C/S結(jié)構(gòu),即大家熟知的客戶機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到CLIENT端和SERVER端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是CLIENT/SERVER形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的WEB應(yīng)用發(fā)展,WEB和CLIENT/SERVER應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。C/S結(jié)構(gòu)的基本原則是將計(jì)算機(jī)應(yīng)用任務(wù)分解成多個(gè)子任務(wù),由多臺計(jì)算機(jī)分工完成,即采用“功能分布”原則??蛻舳送瓿蓴?shù)據(jù)處理,數(shù)據(jù)表示以及用戶接口功能;服務(wù)器端完成DBMS的核心功能。這種客戶請求服務(wù)、服務(wù)器提供服務(wù)的處理方式是一種新型的計(jì)算機(jī)應(yīng)用模式。24VISUALC60MFC簡介VC是WINDOWS平臺上的C編程環(huán)境,學(xué)習(xí)VC要了解很多WINDOWS平臺的特性并且還要掌握MFC、ATL、COM等的知識,難度比較大。WINDOWS下編程需要了解WINDOWS的消息機(jī)制以及回調(diào)(CALLBACK)函數(shù)的原理;MFC是WIN32API的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;COM是代碼共享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。VC作為一個(gè)主流的開發(fā)平臺一直深受編程愛好者的喜愛,但是很多人卻對它的入門感到難于上青天,究其原因主要是大家對他錯(cuò)誤的認(rèn)識造成的,嚴(yán)格的來說VC不是門語言,雖然它和C之間有密切的關(guān)系,如果形象點(diǎn)比喻的話,可以C看作為一種”工業(yè)標(biāo)準(zhǔn)”,而VC則是某種操作系統(tǒng)平臺下的”廠商標(biāo)準(zhǔn)”,而”廠商標(biāo)準(zhǔn)”是在遵循”工業(yè)標(biāo)準(zhǔn)”的前提下擴(kuò)展而來的。VC應(yīng)用程序的開發(fā)主要有兩種模式,一種是WINAPI方式,另一種則是MFC方式,傳統(tǒng)的WINAPI開發(fā)方式比較繁瑣,而MFC則是對WINAPI再次封裝,所以MFC相對于WINAPI開發(fā)更具備效率優(yōu)勢。MFC借助C的優(yōu)勢為WINDOWS開發(fā)開辟了一片新天地,同時(shí)也借助APPLICATIONWIZZARD使開發(fā)者擺脫離了那些每次都必寫基本代碼,借助CLASSWIZARD和消息映射使開發(fā)者擺脫了定義消息處理時(shí)那種混亂和冗長的代碼段。更令人興奮的是利用C的封裝功能使開發(fā)者擺脫WINDOWS中各種句柄的困擾,只需要面對C中的對象,這樣一來使開發(fā)更接近開發(fā)語言而遠(yuǎn)離系統(tǒng)。(但我個(gè)人認(rèn)為了解系統(tǒng)原理對開發(fā)很有幫助)正因?yàn)镸FC是建立在C的基礎(chǔ)上,所以我強(qiáng)調(diào)C/C語言基礎(chǔ)對開發(fā)的重要性。利用C的封裝性開發(fā)者可以更容易理解和操作各種窗口對象;利用C的派生性開發(fā)者可以減少開發(fā)自定義窗口的時(shí)間和創(chuàng)造出可重用的代碼;利用虛擬性可以在必要時(shí)更好的控制窗口的活動(dòng)。而且C本身所具備的超越C語言的特性都可以使開發(fā)者編寫出更易用,更靈活的代碼。在MFC中對消息的處理利用了消息映射的方法,該方法的基礎(chǔ)是宏定義實(shí)現(xiàn),通過宏定義將消息分派到不同的成員函數(shù)進(jìn)行處理。第3章系統(tǒng)分析31可行性分析可行性分析是對項(xiàng)目的可行程度進(jìn)行分析,以便管理層對技術(shù)及資金的投入進(jìn)行決策。其主要包括技術(shù)可行性,經(jīng)濟(jì)可行性,操作可行性,營運(yùn)可行性等。通過對需求分析的研究,對本項(xiàng)目做如下的可行性分析。311技術(shù)可行性技術(shù)方面的可行性就是根據(jù)現(xiàn)有的技術(shù)條件,能否實(shí)現(xiàn)系統(tǒng)的各項(xiàng)要求。設(shè)備上,該系統(tǒng)對所需的硬件設(shè)備,如服務(wù)器、PC機(jī)等的性能要求一般,現(xiàn)有設(shè)備的性能完全能夠滿足系統(tǒng)功能的要求;軟件上,本系統(tǒng)屬于數(shù)據(jù)庫應(yīng)用程序,本系統(tǒng)需要一個(gè)數(shù)據(jù)庫服務(wù)器及其運(yùn)行的操作系統(tǒng)平臺,根據(jù)客戶的數(shù)據(jù)量并不是十分巨大,選擇SQLSERVER2005作為數(shù)據(jù)庫可以滿足系統(tǒng)對數(shù)據(jù)庫的要求,安全性好,效率高。這些軟件在中小型MIS開發(fā)中已被大量應(yīng)用,技術(shù)上都比較成熟,因此技術(shù)上是可行的。312經(jīng)濟(jì)可行性從項(xiàng)目提出者的發(fā)面來說,根據(jù)實(shí)際的需求,開發(fā)本系統(tǒng),不但可以提高公司的管理水平,也可以提高消費(fèi)者的點(diǎn)歌效率,為消費(fèi)者提供便利,舒適的環(huán)境,增加顧客的流量,給公司帶來潛在的利潤,所以從經(jīng)濟(jì)上來說是完全可行的。另一方面,對該系統(tǒng)的開發(fā)既能增加項(xiàng)目開發(fā)公司的技術(shù)儲備,又能提高對同類項(xiàng)目開發(fā)的熟練程度。313操作可行性本系統(tǒng)采用WINDOWS圖形界面,是大家的熟悉的操作系統(tǒng),對于用戶,只需要具有一般計(jì)算機(jī)知識的人員都可以輕松上手。而且整個(gè)系統(tǒng)采用最友好的交互界面,簡潔明了,不需要對數(shù)據(jù)庫非常了解也可以熟練操作。再有就是操作上以后可以加載到觸屏的終端上,這樣就更可以使得操作更加的友好。32需求分析321小型點(diǎn)歌管理系統(tǒng)就是針對點(diǎn)歌用戶開發(fā)而成,本系統(tǒng)的宗旨是使KTV的歌曲管理工作更加科學(xué)、合理的規(guī)劃,系統(tǒng)、高效的實(shí)施。在用戶操作部分能實(shí)現(xiàn)根據(jù)歌手的地區(qū),性別,歌手的拼音,歌曲的名字?jǐn)?shù),歌曲類別查詢;可以查看或者編輯播放列表,也可以刪除單首歌曲;還可以根據(jù)自己的喜好選擇播放模式。管理員也可以對歌庫進(jìn)行管理操作,并且實(shí)現(xiàn)用戶的結(jié)賬付費(fèi)功能。此系統(tǒng)可以方便快捷的管理這些瑣碎的數(shù)據(jù)和瑣碎的事務(wù),使點(diǎn)歌質(zhì)量得到有效的保障。點(diǎn)歌系統(tǒng)的用戶主要分為消費(fèi)者管理員以及系統(tǒng)維護(hù)人員。各用戶具體操作時(shí)實(shí)現(xiàn)的功能如下表所示表11用戶一覽表用戶類型說明代表消費(fèi)者該類用戶直接操作系統(tǒng)的客戶端點(diǎn)歌系統(tǒng)部分,與點(diǎn)歌系統(tǒng)直接消費(fèi)者322系統(tǒng)功能需求系統(tǒng)主要分為服務(wù)器端和客戶端。通過管理人員對服務(wù)器端的控制,管理點(diǎn)歌系統(tǒng)歌曲數(shù)據(jù)庫并且同時(shí)實(shí)現(xiàn)給用戶開包廂,查看包廂使用時(shí)間等功能;啟動(dòng)服務(wù)器端程序后,客戶端可進(jìn)行即點(diǎn)即播(即零等待)的點(diǎn)歌操作,并且多個(gè)客戶端可同時(shí)點(diǎn)播同一首歌曲。1系統(tǒng)客戶端的主要功能系統(tǒng)客戶端的主要功能是用戶可以根據(jù)個(gè)人愛好通過包房電腦及該軟件查詢(包括歌星查詢、拼音查詢、字母查詢、組合查詢等查詢方式)所需要的歌曲,了解歌星的簡介、播放歌曲、控制歌曲、等,同時(shí),系統(tǒng)的功能區(qū)與顯示信息區(qū)分開,使用戶在使用上更簡便,系統(tǒng)功能上更強(qiáng)大。點(diǎn)歌系統(tǒng)對于客戶端的主要需求功能有播放,暫停,點(diǎn)歌,控制音量等,各部分的功能描述如下圖所示21客戶端需求規(guī)定編號功能(類)名稱功能描述重要程度1播放播放歌曲A2暫停停止播放的歌曲A3點(diǎn)歌按歌星按照歌星名字點(diǎn)歌A4按歌曲名按照歌曲名點(diǎn)歌B5按分類按照分類點(diǎn)歌B6按拼音按照拼音點(diǎn)歌B7主菜單顯示客戶端主界面A8音量調(diào)整播放歌曲的音量大小A2服務(wù)器端的主要功能通過管理員進(jìn)行系統(tǒng)歌庫中的歌曲管理,如添加、編輯、刪除等。并且根據(jù)系統(tǒng)所能提供的服務(wù)內(nèi)容供消費(fèi)者使用。當(dāng)該請求有效時(shí)需要中央服務(wù)器系進(jìn)行交互管理員該類用戶有權(quán)限添加或刪除系統(tǒng)內(nèi)的相關(guān)的曲目,對系統(tǒng)進(jìn)行操作,且可以獲取每一個(gè)包廂的點(diǎn)歌狀況信息前臺工作人員系統(tǒng)維護(hù)人員該類用戶有權(quán)限對系統(tǒng)進(jìn)行更新維護(hù)維護(hù)員工統(tǒng)進(jìn)行響應(yīng),其服務(wù)內(nèi)容可根據(jù)消費(fèi)者的需求進(jìn)行設(shè)定。系統(tǒng)服務(wù)器端的主要需求功能是歌曲的添加和刪除等。各部分功能的具體描述如下圖所示表22服務(wù)器功端需求規(guī)定33系統(tǒng)業(yè)務(wù)流程本套KTV點(diǎn)歌系統(tǒng)軟件的編寫,是為了設(shè)計(jì)出一套C/S模式的KTV場所需求的應(yīng)用和管理軟件。軟件分為三大部分,點(diǎn)歌部分,數(shù)據(jù)管理部分和服務(wù)器處理部分。點(diǎn)歌部分(客戶端)是以桌面軟件的形式實(shí)現(xiàn),用戶通過與軟件的交互,對數(shù)據(jù)庫中的音樂進(jìn)行查詢,并對自己喜歡的歌曲進(jìn)行點(diǎn)播。消費(fèi)者實(shí)現(xiàn)的點(diǎn)歌功能基本包括歌曲的增加,刪除以及查找等功能。其基本的用例圖如下圖所示編號功能(類)名稱功能描述重要程度1添加按歌曲名添加添加新歌A按歌手名歌曲名添加新歌B2刪除按歌曲名刪除刪除已有歌曲A按歌手名刪除刪除已有歌曲B在管理部分中,管理員可以對數(shù)據(jù)庫中的音樂數(shù)據(jù)進(jìn)行增加、修改、刪除和查詢等操作,從而對數(shù)據(jù)庫中的音樂數(shù)據(jù)進(jìn)行管理。服務(wù)器處理部分(服務(wù)器端)則是可視化的操作處理軟件,對點(diǎn)歌客戶端和管理客戶端的請求進(jìn)行響應(yīng),執(zhí)行相應(yīng)的查詢數(shù)據(jù)庫操作,并向客戶端返回所需的數(shù)據(jù)。管理員的具體的用例圖如下圖所示第4章系統(tǒng)的總體設(shè)計(jì)41系統(tǒng)基本模塊設(shè)計(jì)本系統(tǒng)總體分為選歌功能,播放操作,管理功能3個(gè)部分。選歌功能實(shí)現(xiàn)多種方式點(diǎn)歌;播放操作主要實(shí)現(xiàn)對當(dāng)前播放歌曲的音量,播放模式,快進(jìn),快退等操作;而管理功能實(shí)現(xiàn)對數(shù)據(jù)庫的操作和收費(fèi)操作等,系統(tǒng)整體模塊結(jié)構(gòu)圖如下各模塊的具體功能如下播放操作1上下一首歌下移或者上移改變當(dāng)前歌曲。2增減音量實(shí)現(xiàn)對播放音量的控制。3快慢進(jìn)實(shí)現(xiàn)改變播放速度4暫停,停止實(shí)現(xiàn)對播放的控制5播放模式有單曲循環(huán),單曲播放,順序播放,列表循環(huán)4種播放模式供選擇選歌功能1播放點(diǎn)歌列表將已點(diǎn)播的的歌曲顯示在主界面上2刪除歌曲列表可以刪除已點(diǎn)歌曲,分單手刪除和全部刪除3按歌手點(diǎn)歌根據(jù)歌手來自的地區(qū)查看,分為港臺歌手,大陸歌手,外國歌手4按拼音查詢根據(jù)用戶輸入的拼音,對歌手姓名進(jìn)行模糊查詢,顯示匹配的歌手5按性別查詢根據(jù)歌手的性別查詢,分為男歌手,女歌手,組合6按歌曲類別查詢根據(jù)歌曲類別查詢,分為流行歌曲,通俗歌曲,外國歌曲,世界名曲7按歌曲名字?jǐn)?shù)查詢根據(jù)用戶輸入的數(shù)字,對歌曲名字?jǐn)?shù)查詢,顯示匹配的歌曲管理功能1管理員登陸先登錄后進(jìn)行管理員操作,給消費(fèi)者點(diǎn)歌2開戶點(diǎn)歌有管理員登陸后,設(shè)置房間類型和會(huì)員卡類型交預(yù)付金等3添加歌曲輸入歌曲信息,把歌曲文件放入相應(yīng)路徑。4刪除歌曲根據(jù)各區(qū)分為按歌手名拼音刪除和按歌曲名字?jǐn)?shù)刪除5消費(fèi)金額根據(jù)歌唱時(shí)間,包廂類型和用戶身份情況計(jì)算消費(fèi)金額42系統(tǒng)功能模塊流程圖點(diǎn)歌管理系統(tǒng)主要由選歌模塊,管理模塊以及播放操作。選歌模塊和管理模塊主要實(shí)現(xiàn)的是對歌曲的查詢功能,播放模塊主要是對歌曲信息的調(diào)取以及歌曲的播放功能。421主界面流程圖當(dāng)用戶進(jìn)入主界面后將面對對歌曲的查詢與管理操作,具體內(nèi)容如下圖所示當(dāng)管理員進(jìn)入系統(tǒng)后主要是實(shí)現(xiàn)歌曲數(shù)據(jù)的修改查詢等功能。具體職能如下圖所示422播放控制模塊播放模塊主要是用戶通過控制界面實(shí)現(xiàn)所點(diǎn)歌曲的播放,其中用戶與控制界面的交互圖如下用戶暫停播放控制界面切歌音量控制開始播放播放下一首調(diào)高和調(diào)低播放暫停423點(diǎn)歌管理模塊點(diǎn)歌系統(tǒng)對于歌曲的管理主要包括歌曲的刪除以及上移下移操作。用戶與客戶端的交互圖如下圖所示COMMENTU3下圖的空白框里應(yīng)該寫點(diǎn)什么數(shù)據(jù)庫COMMENTU4這幅圖需要一點(diǎn)文字介紹用戶刪除客戶端上移下移424服務(wù)器處理模塊服務(wù)器系統(tǒng)包括管理歌曲庫,相應(yīng)的點(diǎn)歌系統(tǒng)模塊。分別負(fù)責(zé)數(shù)據(jù)庫的更新,與客戶端數(shù)據(jù)進(jìn)行交互。相應(yīng)的圖如下客戶端服務(wù)程序媒體數(shù)據(jù)和數(shù)據(jù)庫結(jié)果數(shù)據(jù)請求數(shù)據(jù)庫查詢數(shù)據(jù)庫結(jié)果425各模塊之間的交互圖點(diǎn)歌管理系統(tǒng)的各模塊之間的交互圖如下圖所示用戶查詢界面服務(wù)器數(shù)據(jù)庫選擇點(diǎn)歌方式發(fā)送查詢命令查詢數(shù)據(jù)庫返回?cái)?shù)據(jù)庫數(shù)據(jù)返回所查數(shù)據(jù)顯示數(shù)據(jù)按歌手名查詢發(fā)送查詢數(shù)據(jù)查詢數(shù)據(jù)庫返回?cái)?shù)據(jù)庫數(shù)據(jù)返回所查數(shù)據(jù)按歌曲名查詢顯示數(shù)據(jù)按歌曲拼音查詢發(fā)送查詢數(shù)據(jù)查詢數(shù)據(jù)庫返回?cái)?shù)據(jù)庫數(shù)據(jù)返回查詢數(shù)據(jù)顯示數(shù)據(jù)按歌曲分類查詢發(fā)送查詢數(shù)據(jù)查詢數(shù)據(jù)庫返回?cái)?shù)據(jù)庫數(shù)據(jù)返回查詢數(shù)據(jù)顯示數(shù)據(jù)關(guān)閉系統(tǒng)第五章數(shù)據(jù)庫的設(shè)計(jì)進(jìn)行管理系統(tǒng)的設(shè)計(jì)首先要考慮好如何實(shí)現(xiàn)數(shù)據(jù)庫的設(shè)計(jì)。數(shù)據(jù)庫作為整個(gè)系統(tǒng)的基礎(chǔ),要保證其設(shè)計(jì)的合理性,其中數(shù)據(jù)表要滿足規(guī)范化要求。在使用應(yīng)用系統(tǒng)時(shí),擁有合理的數(shù)據(jù)庫往往起到事半功倍的效果。51數(shù)據(jù)庫分析點(diǎn)歌管理系統(tǒng)架構(gòu)采用CS模式來實(shí)現(xiàn),在某一時(shí)刻可能有多個(gè)查詢操作進(jìn)行。而且操作比較頻繁。因此對數(shù)據(jù)庫的并發(fā)性,安全性,共享性等性能要求較高,故采用SQLSERVER2005作為系統(tǒng)開發(fā)的數(shù)據(jù)庫管理系統(tǒng)。數(shù)據(jù)庫處理的的主要對象是歌曲,而歌曲的類型,歌曲的歌手,歌手的性別等這些屬性也是需要考慮的操作對象。對歌曲的播放操作也要能滿足普通的消費(fèi)者的需求。52數(shù)據(jù)庫管理系統(tǒng)ER圖根據(jù)分析設(shè)計(jì)的結(jié)果,該系統(tǒng)包含的實(shí)體有管理員,用戶,歌曲,歌手等。下面將分別介紹各實(shí)體及實(shí)體間的ER圖。(1)管理員實(shí)體可以實(shí)現(xiàn)歌曲的管理功能,如刪除歌舞,增加歌曲等。管理員實(shí)體ER圖(2)通過歌曲實(shí)體可以獲取歌曲的基本信息,如歌曲的歌手名,歌名以及歌曲類型等。歌曲實(shí)體ER圖(3)歌手實(shí)體能夠提供歌手的基本信息,如歌手的姓名,歌手的地區(qū)等等。歌手實(shí)體ER圖COMMENTU5消費(fèi)者與管理員之間缺少“管理”菱形框。還有,圖中的菱形框畫扁一點(diǎn),緊湊些。COMMENTU6沒有用戶表,與ER圖不符,也不合理。(4)用戶實(shí)體可以提供用戶當(dāng)前的消費(fèi)狀況以及他們所處的房間類型和剩余金額等。用戶實(shí)體ER圖(5)各實(shí)體之間緊密相連,例如消費(fèi)者與管理員的聯(lián)系,消費(fèi)者與歌曲的聯(lián)系,管理員與歌曲的聯(lián)系。具體相關(guān)的ER圖如下圖所示53數(shù)據(jù)庫邏輯設(shè)計(jì)根據(jù)以上的數(shù)據(jù)庫分析,本系統(tǒng)數(shù)據(jù)庫命名為MUSIC,數(shù)據(jù)庫中包含5個(gè)表ADMIN表,SINGER表,MUSICLIST表,ABATE表,ROOM表。COMMENTU7缺少管理員編號屬性項(xiàng)COMMENTU8題外話,這個(gè)什么意思、有什么用處COMMENTU9表里面沒有用戶信息,如何區(qū)別多個(gè)消費(fèi)者COMMENTU10自增什么意思不如刪掉1ADMIN表用于保存管理員信息。它的主鍵是管理員名稱名稱字段名稱數(shù)據(jù)類型主鍵非空管理員名稱ADMINNAMEVARCHARYESYES密碼ADMINPWDVARCHARNOYES2SINGER表用于保存歌手信息,主鍵是歌手編號。名稱字段名稱數(shù)據(jù)類型主鍵非空歌手編號SINNUMINTYESYES歌手名SINNAMEVARCHARNOYES歌手性別SINSEXCHARNOYES歌手地區(qū)SINAREAVARCHARNOYES歌手名拼音SINPINCHARNOYES3MUSICLIST表用于歌曲信息的存儲,主鍵是歌曲編號,外鍵是歌手編號名稱字段名稱數(shù)據(jù)類型主鍵非空歌手編號SINGERNAMEVARCHAR外鍵YES歌曲編號SINGERNUMINTYESYES歌曲名MUNAMEVARCHARNOYES歌曲名字?jǐn)?shù)MNUMINTNOYES歌曲類別MTYPEVARCHARNOYES歌曲序列文件名FNAMEVARCHARNOYES格式FORMATVARCHARNOYES歌曲存儲途徑MUSICPATHVARCHARNOYES4USERTEMP表用于保存用戶點(diǎn)歌歌曲信息,設(shè)置歌曲編號為主鍵,歌手編號為外鍵,對歌曲存儲途徑進(jìn)行唯一性約束。名稱字段名稱數(shù)據(jù)類型主鍵非空歌曲名TMUNAMEVARCHARNOYES歌曲編號TMUSICNUMINTYES自增YESCOMMENTU11問題同上;如何區(qū)別多個(gè)消費(fèi)者COMMENTU12下表中沒有會(huì)員編號格式TFORMATEVARCHARNOYES歌曲序列文件名TFILENAMEINTNOYES歌曲類別TSONGTYPEVARCHARNOYES歌手編號TSINGERNUMINT外鍵自增YES歌手拼音TSINGERPINVARCHARNOYES歌曲存儲途徑PLAYPATHVARCHARNOYES5PLAYLIST表用來記錄當(dāng)前播放列表信息,設(shè)置歌曲編號為主鍵,歌曲編號為外鍵,對歌曲存儲途徑進(jìn)行唯一性約束。名稱字段名稱數(shù)據(jù)類型主鍵非空歌曲名TMUNAMEVARCHARNOYES歌曲編號TSINGERNUMINTYES自增YES格式TFORMATEVARCHARNOYES歌曲序列文件名TFILENAMEINTNOYES歌曲類別TSONGTYPEVARCHARNOYES歌手名TSINGERNAMEVARCHARNOYES歌手編號TSINGERNUMINT外鍵自增YES歌手拼音TSINGERPINVARCHARNOYES歌曲存儲途徑PLAYPATHVARCHARNOYES6ABATE表用來記錄會(huì)員的等級以及相應(yīng)的會(huì)員折扣,主鍵是會(huì)員編號,名稱字段名稱數(shù)據(jù)類型主鍵非空會(huì)員等級CARDTYPEVARCHARYESYES會(huì)員折扣ABATEINTNOYES7ROOM表用來記錄房間類型以及對應(yīng)價(jià)格,主鍵是包間類型,外鍵是會(huì)員編號。名稱字段名稱數(shù)據(jù)類型主鍵非空COMMENTU13本章在說數(shù)據(jù)庫,應(yīng)該貼建立或連接數(shù)據(jù)庫的代碼包間類型ROOMTYPEVARCHARYESYES包間價(jià)格PRICEINTNOYES54數(shù)據(jù)庫的具體實(shí)現(xiàn)點(diǎn)歌管理系統(tǒng)需要實(shí)現(xiàn)與服務(wù)器端的連接從而獲取并修改服務(wù)器端的信息,主要實(shí)現(xiàn)該功能的代碼如下CONNECTIONPTRM_PCONNECTIONTRYHRESULTHRM_PCONNECTIONCREATEINSTANCE“ADODBCONNECTION“/創(chuàng)建CONNECTION對象IFSUCCEEDEDHRHRM_PCONNECTIONOPEN“DRIVERSQLSERVERSERVERYSS59EA0D478A8DATABASEMASTER“,“,“,ADMODEUNKNOWN/2005及以上版本/HRPCONNECTIONOPEN“DRIVERSQLSERVERSERVERHCMSSQL2008DATABASEMASTERUIDSAPWD“,“,“,ADMODEUNKNOWNCATCH_COM_ERRORE/COM錯(cuò)誤取得,當(dāng)執(zhí)行COM功能的時(shí)候,如果出錯(cuò),可以捕捉到_COM_ERROR的異常CSTRINGSTRCOMERRORSTRCOMERRORFORMAT“錯(cuò)誤編號08LXN錯(cuò)誤信息SN錯(cuò)誤源SN錯(cuò)誤描述S“,EERROR,/錯(cuò)誤編號EERRORMESSAGE,/錯(cuò)誤信息LPCSTRESOURCE,/錯(cuò)誤源LPCSTREDESCRIPTION/錯(cuò)誤描述MESSAGEBOXNULL,STRCOMERROR,“錯(cuò)誤“,MB_ICONEXCLAMATION第六章系統(tǒng)詳細(xì)設(shè)計(jì)根據(jù)系統(tǒng)的需求和功能能分析,本系統(tǒng)采用界面較為實(shí)用的基于對話框風(fēng)格模式布局。前端開發(fā)采用VISUALC60,后臺數(shù)據(jù)庫系統(tǒng)采用大型數(shù)據(jù)庫系統(tǒng)SQLSEVER,系統(tǒng)的運(yùn)行平臺為WINDOWS。61系統(tǒng)主界面的實(shí)現(xiàn)系統(tǒng)框架采用基于對話框風(fēng)格,可在該界面上實(shí)現(xiàn)所有操作功能。本系統(tǒng)操作對象主要是歌曲,所有需要插入的視頻或者音頻播放控件,通過各種點(diǎn)歌方式,最終的操作結(jié)果將采用列表控件顯示播放列表。這種顯示方式對進(jìn)一步實(shí)現(xiàn)對歌曲的播放控制有利。播放控制不僅包括常見的快進(jìn),快退,前一首,后一首,還包括單曲循環(huán),單曲播放,循環(huán)播放等播放模式的切換。另外管理員對數(shù)據(jù)庫和系統(tǒng)的管理功能也通過主界面來實(shí)現(xiàn)。系統(tǒng)主界面分成4個(gè)區(qū)域左上區(qū)是播放窗口區(qū)域,可以實(shí)現(xiàn)對視頻、音頻文件的播放;右邊是選歌和系統(tǒng)管理功能模塊操作區(qū),可以通過各種方式選歌,可以對系統(tǒng)進(jìn)行設(shè)置;右下區(qū)是播放控制區(qū)域,實(shí)現(xiàn)對播放音量、播放速度、播放模式等的控制,初始界面效果如圖所示圖61初始界面效果圖初始界面上許多初始按鈕都不能使用。通過管理員幫助消費(fèi)者完成開戶點(diǎn)歌設(shè)置,如圖圖62用戶點(diǎn)歌對話框設(shè)置成功后的點(diǎn)歌界面,各功能按鈕都可以使用了,界面效果如圖所示圖63消費(fèi)者點(diǎn)歌對話框62歌曲選擇模塊設(shè)計(jì)歌曲選擇模塊是本系統(tǒng)最重要的功能模塊。該模塊設(shè)計(jì)的完善與否對整個(gè)系統(tǒng)起著至關(guān)重要的作用。本系統(tǒng)中主要精力都放在結(jié)合實(shí)際使用情況來逐步完善該模塊的功能。用戶通過管理員幫助開戶進(jìn)入點(diǎn)歌模式。結(jié)合需求,歌曲選擇模塊應(yīng)實(shí)現(xiàn)功能為按歌手地區(qū)、按拼音查詢、按歌手性別查詢、按歌曲名字?jǐn)?shù)查詢等方式點(diǎn)歌。開發(fā)該模塊具體功能前,首先要完成其界面的設(shè)計(jì)。本模塊歌曲選擇方式較多,故設(shè)計(jì)界面也較多,除了設(shè)計(jì)管理員開戶界面外,其他各點(diǎn)歌界面布局基本相同。按照顯示效果開發(fā)好界面。這些界面設(shè)計(jì)方法基本類似,都是采用兩個(gè)列表自動(dòng)關(guān)聯(lián)實(shí)現(xiàn)歌曲的選取。歌曲的查找通過組合框中不同的條件來構(gòu)造對應(yīng)的SQL語句,然后執(zhí)行查找并在列表框中顯示,最終再通過獲取主窗口指針動(dòng)態(tài)更新播放列表,完成點(diǎn)歌過程。點(diǎn)歌前需要管理員用戶登錄后,通過開戶模塊設(shè)置好點(diǎn)歌房間以方便結(jié)賬計(jì)費(fèi)的實(shí)現(xiàn)。1按歌手查詢的實(shí)現(xiàn)在點(diǎn)歌模式界面上單擊【按歌手查詢】按鈕,顯示按歌手查詢界面。該界面初始顯示所有的大陸男歌手,通過切換歌手類型,在列表控件動(dòng)態(tài)顯示相關(guān)歌手。選中一個(gè)歌手雙擊后,會(huì)在原列表框中顯示該歌手的所有歌曲。雙擊任一歌曲,會(huì)把該歌曲添加到主界面播放列表中。用戶可以通過【返回上一級菜單】按鈕切換到歌手界面繼續(xù)選歌。該界面的初始化部分主要實(shí)現(xiàn)組合框的數(shù)據(jù)添加并設(shè)置初始值,而且在列表中要顯示歌手類別組合框中默認(rèn)類別的所有歌手的信息。如圖圖64根據(jù)歌手查詢對話框圖65選擇歌曲到播放列表2按拼音查詢的實(shí)現(xiàn)在點(diǎn)歌模式界面上單擊【按拼音查詢】按鈕,顯示該查詢界面,界面初始顯示所有的歌手,通過在編輯框中輸入歌手姓名拼音,列表控件中動(dòng)態(tài)顯示相關(guān)歌手。雙擊任一歌曲,會(huì)把該歌曲添加到主界面播放列表中。用戶可以通過【返回上一級菜單】按鈕切換到歌手界面繼續(xù)選歌。該界面的初始化部分主要實(shí)現(xiàn)組合框的數(shù)據(jù)添加并設(shè)置初始值,而且在列表中要顯示所有歌手的信息。該模塊也分為歌曲添加、顯示歌手、顯示歌曲三個(gè)子模塊,且功能與按歌手查詢類似。如圖66圖66根據(jù)拼音查詢對話框3按字?jǐn)?shù)查詢的實(shí)現(xiàn)在點(diǎn)歌模式界面上單擊【按歌曲名字?jǐn)?shù)查詢】按鈕,顯示對應(yīng)查詢界面。該界面初始顯示歌曲名字?jǐn)?shù)為1的歌曲信息,通過切換歌曲名字?jǐn)?shù)組合框,列表控件中動(dòng)態(tài)顯示對應(yīng)字?jǐn)?shù)的歌曲。雙擊任一歌曲,會(huì)把該歌曲添加到主界面播放列表中22。該界面的初始化部分主要實(shí)現(xiàn)組合框的數(shù)據(jù)添加并設(shè)置初始值,而且在列表控件中要顯示歌曲字?jǐn)?shù)為1的所有歌曲信息。圖68根據(jù)字?jǐn)?shù)查詢對話框以上各種查詢服務(wù)是很重要的,因?yàn)榭蛻羲麄儾樵兊姆绞绞遣灰粯拥?,所以我們都要設(shè)計(jì)很多查詢模式,讓客戶更好的選擇,讓他們更好的享受服務(wù),享受服務(wù)。實(shí)現(xiàn)本模塊功能的主要代碼如下VOIDCHCOKDLGONSINFIND/如果指針為NULL,則說明窗體還沒創(chuàng)建,那么動(dòng)態(tài)創(chuàng)建IFBYSINGERDLGNULL/動(dòng)態(tài)創(chuàng)建對話框?qū)ο驜YSINGERDLGNEWBYSGRDLGBYSINGERDLGCREATEIDD_BYSINGER,NULLBYSINGERDLGSHOWWINDOWSW_SHOW/按歌手拼音查詢/VOIDCHCOKDLGONPYFIND/如果指針為NULL,則說明窗體還沒創(chuàng)建,那么動(dòng)態(tài)創(chuàng)建IFBYPINYINDLGNULL/動(dòng)態(tài)創(chuàng)建對話框?qū)ο驜YPINYINDLGNEWBYPINYINDLGBYPINYINDLGCREATEIDD_BYPINYIN,NULLBYPINYINDLGSHOWWINDOWSW_SHOW/按歌曲名字?jǐn)?shù)查詢/VOIDCHCOKDLGONNUFIND/如果指針為NULL,則說明窗體還沒創(chuàng)建,那么動(dòng)態(tài)創(chuàng)建IFBYNUMDLGNULL/動(dòng)態(tài)創(chuàng)建對話框?qū)ο驜YNUMDLGNEWBYZISHUDLGBYNUMDLGCREATEIDD_BYZISHU,NULLBYNUMDLGSHOWWINDOWSW_SHOW/按歌曲類別查詢/VOIDCHCOKDLGONTFIND/BYSONGTYPDLGBYSONGTYPEDLG/BYSONGTYPEDLGDOMODAL/如果指針為NULL,則說明窗體還沒創(chuàng)建,那么動(dòng)態(tài)創(chuàng)建IFBYSONGTYPEDLGNULL/動(dòng)態(tài)創(chuàng)建對話框?qū)ο驜YSONGTYPEDLGNEWBYSONGTYPDLGBYSONGTYPEDLGCREATEIDD_BYSONGTYP,NULLBYSONGTYPEDLGSHOWWINDOWSW_SHOWVOIDCHCOKDLGSHOWLISTDATE/在在播放列表里顯示歌曲CSTRINGSONGID,SONGNAME,SINGERNAME,SONGTYPE,FILENAME,FILEFORMATM_LISTDELETEALLITEMS/刪除所有ADOCONNM_ADOCONN/定義數(shù)據(jù)庫操作對象M_ADOCONNONINITADOCONN/鏈接數(shù)據(jù)庫_BSTR_TSQL_RECORDSETPTRM_PRECORDSETSQL“SELECTFROMPLAYLIST“/查詢PLAYLIST表M_PRECORDSETM_ADOCONNGETRECORDSETSQL/得到記錄集IFM_PRECORDSETADOEOF/如果沒有歌曲則退出M_ADOCONNEXITCONNECTRETURNIFM_PRECORDSETADOEOFINTT0M_LISTDELETEALLITEMSWHILEM_PRECORDSETADOEOF/遍歷記錄集INTBT1SONGIDFORMAT“D“,BSONGNAMEM_PRECORDSETGETFIELDSGETITEM“TMUNAME“VALUEBSTRVAL/取歌名SINGERNAMEM_PRECORDSETGETFIELDSGETITEM“TSINGERNAME“VALUEBSTRVAL/取歌手名SONGTYPEM_PRECORDSETGETFIELDSGETITEM“TSONGTYPE“VALUEBSTRVAL/取歌的類型FILENAMEM_PRECORDSETGETFIELDSGETITEM“TFILENAME“VALUEBSTRVAL/取歌的文件名FILEFORMATM_PRECORDSETGETFIELDSGETITEM“TFORMATE“VALUEBSTRVAL/取歌的格式63播放控制模塊設(shè)計(jì)歌曲播放控制模塊主要實(shí)現(xiàn)對歌曲播放過程中的各種操作管理。結(jié)合功能分析可知,此模塊應(yīng)實(shí)現(xiàn)以下幾個(gè)功能播放上一曲、下一曲、增加音量、減少音量、快進(jìn)、快退、暫停、停止及播放模式等功能模塊27。單獨(dú)設(shè)計(jì)函數(shù)實(shí)現(xiàn)播放控制模塊的上述功能是比較繁瑣的,但是由于使用了WINDOWSMEDIAPLAYER控制進(jìn)行歌曲播放,使得該模塊實(shí)現(xiàn)起來比較非常容易,主要是通過CMEDIAPLAYER2類的方法來實(shí)現(xiàn)的。在播放列表控件上添加鼠標(biāo)右鍵菜單(右鍵菜單消息NM_RCLICK)控制播放模式和編輯播放列表,在播放界面上添加按鈕和一組單選按鈕來實(shí)現(xiàn)播放控制和播放模式的切換。播放模塊涉及到人機(jī)交互的設(shè)計(jì),人機(jī)交互很好重要,要給人們很多的好的體驗(yàn),我們采用簡介的設(shè)計(jì)風(fēng)格,人們的體驗(yàn)這種設(shè)計(jì)。讓人們更好的體驗(yàn),讓人們更好的享受點(diǎn)播服務(wù)。歌曲選擇模塊中用戶通過主界面實(shí)現(xiàn)歌曲選擇功能,例如歌曲的播放,上下一首歌,增減音量,快進(jìn)退等。這些功能的主要實(shí)現(xiàn)代碼如下(1)播放獲取路徑后,M_MEDIAPLAYEROPENSONGPATH(2)上一首列表控件行標(biāo)向上走一個(gè),獲取歌名進(jìn)行播放;ROWROW1/行標(biāo)1PLAYSONGNAMEM_LISTGETITEMTEXTROW,0/得到歌名SONGPATHM_LISTGETITEMTEXTROW,5/歌曲格式(3)下一首列表控件行標(biāo)向下走一個(gè),獲取歌名進(jìn)行播放;ROWROW1/行標(biāo)1PLAYSONGNAMEM_LISTGETITEMTEXTROW,1SONGPATHM_LISTGETITEMTEXTROW,5(4)增加音量先用播放控件函數(shù)獲取當(dāng)前音量,加上一個(gè)固定值,再播放;M_MEDIAPLAYERPAUSEM_MEDIAPLAYERSETVOLUMEVL200M_MEDIAPLAYERPLAY(5)減少音量先用播放控件函數(shù)獲取當(dāng)前音量,減去一個(gè)固定值,再播放;M_MEDIAPLAYERPAUSEM_MEDIAPLAYERSETVOLUMEVL200M_MEDIAPLAYERPLAY(6)快進(jìn)獲取當(dāng)前播放進(jìn)度,減去固定值再播放;M_MEDIAPLAYERPAUSEM_MEDIAPLAYERSETCURRENTPOSITIONPOS10

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論