某銀行多媒體會(huì)議系統(tǒng)設(shè)計(jì)方案_第1頁(yè)
某銀行多媒體會(huì)議系統(tǒng)設(shè)計(jì)方案_第2頁(yè)
某銀行多媒體會(huì)議系統(tǒng)設(shè)計(jì)方案_第3頁(yè)
某銀行多媒體會(huì)議系統(tǒng)設(shè)計(jì)方案_第4頁(yè)
某銀行多媒體會(huì)議系統(tǒng)設(shè)計(jì)方案_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

//程序所所用到的的各種程程序包imporrtjjavaa.awwt.BBordderLLayoout;;imporrtjjavaa.awwt.CChecckbooxMeenuIItemm;imporrtjjavaa.awwt.CColoor;imporrtjjavaa.awwtxpponeent;;imporrtjjavaa.awwt.CConttainner;;imporrtjjavaa.awwt.FFileeDiaalogg;imporrtjjavaa.awwt.FFontt;imporrtjjavaa.awwt.FFonttMettriccs;imporrtjjavaa.awwt.GGrapphiccs;imporrtjjavaa.awwt.MMenuu;imporrtjjavaa.awwt.MMenuuBarr;imporrtjjavaa.awwt.MMenuuIteem;imporrtjjavaa.awwt.eevennt.AActiionEEvennt;imporrtjjavaa.awwt.eevennt.AActiionLListteneer;imporrtjjavaa.awwt.eevennt.IItemmEveent;;imporrtjjavaa.awwt.eevennt.IItemmLisstenner;;imporrtjjavaa.awwt.eevennt.WWinddowAAdappterr;imporrtjjavaa.awwt.eevennt.WWinddowEEvennt;imporrtjjavaax.mmediia.CConttrolllerrClooseddEveent;;imporrtjjavaax.mmediia.CConttrolllerrEveent;;imporrtjjavaax.mmediia.CConttrolllerrLisstenner;;imporrtjjavaax.mmediia.EEndOOfMeediaaEveent;;imporrtjjavaax.mmediia.GGainnConntrool;imporrtjjavaax.mmediia.MManaagerr;imporrtjjavaax.mmediia.MMediiaLoocattor;;imporrtjjavaax.mmediia.NNoPllayeerExxcepptioon;imporrtjjavaax.mmediia.PPlayyer;;imporrtjjavaax.mmediia.PPreffetcchCoomplleteeEveent;;imporrtjjavaax.mmediia.RReallizeeCommpleeteEEvennt;imporrtjjavaax.mmediia.TTimee;imporrtjjavaax.sswinng.JJFraame;;//本程序序?qū)?yīng)的的類;classsMeediaaPlaayerr exteendssJFFramme impllemeentssAcctioonLiisteenerr,CConttrolllerrLisstenner,,IttemLListteneer{{ //MeediaaPlaayerr類的變變量成員員的聲明明; //JMMF提供供的播放放器對(duì)象象; Playyerplaayerr; Compponeentvc,,ccc,ggcc;; GainnConntroolggc; //fiirstt值用來(lái)來(lái)控制在在剛開始始程序時(shí)時(shí)顯示一一幅歡迎迎界面;;looop用以以標(biāo)記是是否循環(huán)環(huán)播放;; boolleannfiirstt=truue,looop==faalsee; //設(shè)立立一個(gè)字字符串記記錄當(dāng)前前打開文文件的路路徑 StriingcurrrenntDiirecctorry; MediiaPllayeer(SStriingtittle)){ supeer(ttitlle);;//利用用一個(gè)aadappterr實(shí)現(xiàn)對(duì)對(duì)用戶點(diǎn)點(diǎn)擊窗口口系統(tǒng)菜菜單的關(guān)關(guān)閉按鈕鈕 //時(shí)時(shí)的響應(yīng)應(yīng); addWWinddowLListteneer(nnewWinndowwAdaapteer()){ publlicvoiidwwinddowCClossingg(WiindoowEvventte)){ //調(diào)用用dissposse以執(zhí)執(zhí)行wiindoowClloseed dispposee();; } publlicvoiidwwinddowCClossed((WinndowwEveente){ if((plaayerr!==nuull)) playyer..cloose((); Systtem..exiit(00); } }); //調(diào)用用設(shè)置程程序菜單單欄的方方法成員員完成菜菜單的布布置 setuupMeenu((); setSSizee(4000,4000); setVVisiiblee(trrue)); } //本方方法用以以設(shè)置程程序菜單單欄 publlicvoiidssetuupMeenu((){{ //設(shè)置置一個(gè)菜菜單 Menuuf=nnewMennu(""文件")); //往設(shè)設(shè)置的菜菜單種添添加菜單單項(xiàng)MenuIItemmmii=newwMeenuIItemm("打打開")); mi.aaddAActiionLListteneer(tthiss); f.addd(mmi);; f.adddSeeparratoor()); ChecckbooxMeenuIItemmcbbmi=nnewCheeckbboxMMenuuIteem(""循環(huán)",,faalsee); cbmii.adddIttemLListteneer(tthiss); f.addd(ccbmii); f.adddSeeparratoor()); mi==neewMMenuuIteem(""退出")); mi.aaddAActiionLListteneer(tthiss); f.addd(mmi);; Menuul=nnewMennu(""播放列列表")); Menuuc=nnewMennu(""播放控控制")); MenuuIteemmmovee=newwMeenuIItemm("播播放")); movee.adddAcctioonLiisteenerr(thhis)); c.addd(mmovee); c.adddSeeparratoor()); MenuuIteemppausse==neewMMenuuIteem(""暫停")); pausse.aaddAActiionLListteneer(tthiss); c.addd(ppausse);; c.adddSeeparratoor()); MenuuIteemsstopp=newwMeenuIItemm("停停止")); stopp.adddAcctioonLiisteenerr(thhis)); c.addd(sstopp); c.adddSeeparratoor()); //設(shè)置置一個(gè)菜菜單欄 MenuuBarrmbb=newwMeenuBBar(();//將設(shè)置置的菜單單依次加加入程序序的菜單單欄中去去 mb.aadd((f);; mb.aadd((c);; mb.aadd((l);; //將構(gòu)構(gòu)造完成成的菜單單欄交給給當(dāng)前程程序的窗窗口; setMMenuuBarr(mbb); } //事件件響應(yīng)成成員;捕捕捉發(fā)送送到本對(duì)對(duì)象的各各種事件件; publlicvoiidaactiionPPerfformmed((ActtionnEveente){ //設(shè)一一個(gè)字符符串用于于暫存打打開的媒媒體文件件的路徑徑; Striingcuffilee,sellcecctfiile;; if((e.ggetAActiionCCommmandd()..equualss("退退出"))){{ //調(diào)調(diào)用diispoose以以便執(zhí)行行winndowwCloosedd dispposee();; retuurn;; } //次事事件表明明用戶選選擇了""播放"菜單命命令; //如果果當(dāng)前有有一個(gè)文文件可以以播放則則執(zhí)行播播放命令令; if((e.ggetAActiionCCommmandd()..equualss("播播放"))){{ if((plaayerr!==nuull)){ playyer..staart((); } retuurn;; }//如果當(dāng)當(dāng)前正在在播放某某一文件件,則執(zhí)執(zhí)行暫停停; if((e.ggetAActiionCCommmandd()..equualss("暫暫停"))){{ if((plaayerr!==nuull)){ playyer..stoop()); } retuurn;; } //次事事件表明明用戶選選擇了""播放"菜單命命令; //如果果當(dāng)前有有一個(gè)文文件可以以播放則則執(zhí)行播播放命令令; if((e.ggetAActiionCCommmandd()..equualss("停停止"))){{ if((plaayerr!==nuull)){playeer.sstopp();; playyer..settMeddiaTTimee(neewTTimee(0))); } retuurn;; } //用戶戶選擇要要播放的的媒體文文件 if((e.ggetAActiionCCommmandd()..equualss("打打開"))){{ FileeDiaaloggfdd=newwFiileDDiallog((thiis,"打開開媒體文文件",,FiileDDiallog..LOAAD);;fd.seetDiirecctorry(ccurrrenttDirrecttoryy); fd.sshoww();; //如如果用戶戶放棄選選擇文件件,則返返回 if((fd..gettFille())===nuull)) retuurn;; //保存存了所選選文件的的名稱及及其全路路徑名稱稱已被稍稍后使用用 //同時(shí)時(shí)設(shè)置當(dāng)當(dāng)前文件件夾路徑徑 selccecttfille==fdd.geetFiile((); currrenttDirrecttoryy=fd..gettDirrecttoryy();; cufiile=ccurrrenttDirrecttoryy+sellcecctfiile;; //將用用戶選擇擇的文件件作為一一個(gè)菜單單項(xiàng)加入入播放列列表該菜菜單項(xiàng)""名為"該文件件名; //被點(diǎn)點(diǎn)擊后給給出的命命令串是是該文件件的全路路徑名 MenuuIteemmmi==neewMMenuuIteem(sselccecttfille);; mi.ssetAActiionCCommmandd(cuufille);; MenuuBarrmbb=gettMennuBaar()); Menuum=mmb.ggetMMenuu(2)); mi.aaddAActiionLListteneer(tthiss); m.addd(mmi);; }ellse{ //程序序邏輯運(yùn)運(yùn)行到此此表示用用戶選擇擇了一個(gè)個(gè)"播放列列表"中的媒媒體文件件 //此時(shí)時(shí)可以通通過(guò)如下下動(dòng)作獲獲得該文文件的全全路徑名名; cufiile=ee.geetAcctioonCoommaand((); selccecttfille==cuufille; } //如果果已存在在一個(gè)播播放器,則則先將其其關(guān)閉,稍稍后重新新創(chuàng)建 //創(chuàng)建建播放器器時(shí)需要要捕捉一一些異常常; if((plaayerr!==nuull)) playyer..cloose((); try{ playyer=MManaagerr.crreattePllayeer(nnewMeddiaLLocaatorr("ffilee:"+ccufiile))); }caatchh(jjavaa.ioo.IOOExccepttionne22){{ Systtem..outt.prrinttln((e2)); retuurn;; }caatchh(NNoPllayeerExxcepptioonee2){ Systtem..outt.prrinttln(("不能能找到播播放器..");; retuurn;; } if((plaayerr===nuull)){ Systtem..outt.prrinttln(("無(wú)法法創(chuàng)建播播放器..");; retuurn;; } firsst==faalsee; setTTitlle(sselccecttfille);; //設(shè)置置處理播播放控制制器實(shí)際際的對(duì)象象; playyer..adddConntroolleerLiisteenerr(thhis)); playyer..preefettch((); }//因?yàn)閷?shí)實(shí)現(xiàn)了""ConntroolleerLiisteenerr"接口口,本方方法用于于處理媒媒體播放放器傳來(lái)來(lái)的事件件; publlicvoiidcconttrolllerrUpddatee(CoontrrolllerEEvenntee){{ Conttainnertaiinerr=gettConntenntPaane((); //調(diào)調(diào)用pllayeer.cclosse())時(shí)ConntroolleerClloseedEvventt事件出出現(xiàn)。 //如如果存在在視覺(jué)部部件,則則該部件件應(yīng)該拆拆除(為為一致起起見, //我我們對(duì)控控制面板板部件也也執(zhí)行同同樣的操操作下一一次需要要時(shí)再構(gòu)構(gòu)造) if((eiinsttancceoffCoontrrolllerCClossedEEvennt){ if((vc!=nulll){ remoove((vc)); vc==nuull;; } if((cc!=nulll){ remoove((cc)); cc==nuull;; } retuurn;; } //在播播放結(jié)束束時(shí),將將播放指指針置為為文件之之首,如如果設(shè)定定了循環(huán)環(huán)播放,則則再次啟啟動(dòng)播放放器; if((eiinsttancceoffEnndOffMeddiaEEvennt){ playyer..settMeddiaTTimee(neewTTimee(0))); if((looop){ playyer..staart((); } retuurn;; } //PrrefeetchhCommpleeteEEvennt事件件發(fā)生后后調(diào)用sstarrt,正正式啟動(dòng)動(dòng)播放 if((eiinsttancceoffPrrefeetchhCommpleeteEEvennt){ playyer..staart((); retuurn;; }//本事件件表示由由于用于于播放的的資源已已經(jīng)確定定;此時(shí)時(shí)要將媒媒體的圖圖形coonmoopneent //(如如果有)顯顯示出來(lái)來(lái),同時(shí)時(shí)將播放放器pllayeer的控控制器顯顯示到窗窗口里;; if((eiinsttancceoffReealiizeCComppletteEvventt){{ //如果果媒體中中有圖像像,將對(duì)對(duì)應(yīng)圖像像commponnentt載入窗窗體; vc==pllayeer.ggetVVisuualCCompponeent((); if((vc!=nulll) tainner..addd(vcc,BBordderLLayoout..CENNTERR); //將對(duì)對(duì)應(yīng)控制制器coompoonennt載入入窗體;; cc==pllayeer.ggetCConttrollPannelCCompponeent((); cc.ssetBBackkgrooundd(Coolorr.BLLUE)); if((cc!=nulll) tainner..addd(ccc,BBordderLLayoout..SOUUTH)); //有一一些特殊殊媒體在在播放時(shí)時(shí)提供另另外的控控制手段段,將該該控制器器一并加加入窗口口; gc==pllayeer.ggetGGainnConntrool()); gcc=ggc.ggetCConttrollCommponnentt();; if((gccc!==nuull)) tainner..addd(gccc,BorrderrLayyoutt.NOORTHH); //根據(jù)據(jù)媒體文文件中是是否有圖圖像,設(shè)設(shè)定相應(yīng)應(yīng)的窗口口大小 if((vc!=nulll){ packk();; retuurn;; }ellse{ setSSizee(3000,75)); setVVisiiblee(trrue)); retuurn;; } } } //菜單單狀態(tài)改改變事件件的響應(yīng)應(yīng)函數(shù);; publlicvoiidiitemmStaateCChanngedd(IttemEEvenntee){{ loopp=!looop;; } //不執(zhí)執(zhí)行背景景清除操操作,以以免控制制面板部部件閃爍爍 //同時(shí)時(shí)使得本本程序在在用鼠標(biāo)標(biāo)拖動(dòng)窗窗口時(shí)存存在一些些沒(méi)有及及時(shí)重繪繪的情況況,有待待改進(jìn) publlicvoiiduupdaate((Graaphiicsg){ painnt(gg); } //本類類的maain函函數(shù),其其中構(gòu)造造了本類類的一個(gè)個(gè)實(shí)例;; publlicstaaticcvooidmaiin(SStriing[[]aargss){{ newMeddiaPPlayyer(("簡(jiǎn)單單媒體播播放器""); } publlicvoiidppainnt(GGrapphiccsgg){{ //調(diào)調(diào)用超類類Fraame的的paiint(()方法法,該ppainnt())方法將將調(diào)用FFramme包含含的各個(gè)個(gè)容器 //和和部件(包包括控制制面板部部件)的的paiint(()方法法。 supeer.ppainnt(gg); //以下下代碼實(shí)實(shí)現(xiàn)了在在開啟程程序之初初顯示歡歡

溫馨提示

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

評(píng)論

0/150

提交評(píng)論