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

正文內(nèi)容

基于vc的媒體播放器設(shè)計(jì)與功能實(shí)現(xiàn)畢業(yè)論文-在線瀏覽

2025-05-01 10:55本頁(yè)面
  

【正文】 如圖 。 圖 關(guān)聯(lián)變量 關(guān)聯(lián)變量之后,才算是真正的添加完了該控件,可以發(fā)現(xiàn)在關(guān)聯(lián)變量之后,控件工具欄多了 Windows Media Player 控件的選項(xiàng),并且在 Source Files 中增加了 17 個(gè)類(lèi),相應(yīng)的 頭文件也增加了 17個(gè),如圖 所示。該 cwmpplayer4 類(lèi)是呼叫的其他類(lèi)型的主要對(duì)象以及基本的控制功能,提供與 Windows 媒體播放器控件交互的一種基本方法,其中的成員函數(shù)也可以從其他相關(guān)對(duì)象的情況下獲得的部分; cwmpcontrols 主要是控制多個(gè)操作;類(lèi) cwmpmedia 主要是一些媒體文件資源; cwmpplaylist 主要播放操作;cwmpsettings 主要是一些基本的集合操作的媒體文件。 界面設(shè)計(jì) 首先是打開(kāi)按鈕,用來(lái)打開(kāi)此媒體文件。變量的相關(guān)性,于 ID 的修改在表 21,表 22 所示: 表 21 :控件 ID 以及關(guān)聯(lián)變量 控件 Caption 按鈕 ID 關(guān)聯(lián)變量類(lèi)型 關(guān)聯(lián)變量名稱 WMPlayer IDC_player CWMPlayer4 m_ZhuangWenfeng 表 22 控件 ID 以及對(duì)應(yīng)響應(yīng)函數(shù) 控件 Caption 按鈕 ID 消息響應(yīng)函數(shù) 打開(kāi) IDC_open Onopen 播放 IDC_play Onplay 暫停 IDC_pause Onpause 全屏 IDC_fullscreen Onfullscreen 播放列表 IDC_list Onlist 列表框 IDC_LIST1 OnDblclkList1 快進(jìn) IDC_fastforward Onfastforward 快退 IDC_fastreverse Onfastreverse +(音量增加) IDC_addvol Onaddvol (音量減?。? IDC_decvol Ondecvol 靜音 IDC_mute Onmute 10 表 23 控件 ID 以及對(duì)應(yīng)響應(yīng)函數(shù) 控件 Caption 按鈕 ID 消息響應(yīng)函數(shù) 停止 IDC_stop Onstop 保存列表 IDC_save Onsave 刪除列表 IDC_dellist Ondellist 刪除當(dāng)前 IDC_dellistcur Ondellistcur 退出 IDC_exit Onexit 關(guān)于 IDC_about Onabout 以上是關(guān)聯(lián)的對(duì)象對(duì)應(yīng)的控制,除了相應(yīng)的控制,也需要一些有 17 種Windows 媒體播放器控件生成的類(lèi)的對(duì)象被定義,和成員函數(shù)的定義,和一個(gè)對(duì)象的成員聲明放在頭文件中,本設(shè)計(jì)主要有 3 步 ,因?yàn)樵O(shè)計(jì)出提醒彈出框,所 以他們會(huì)在它的定義,如表 23 所示 表 24 其他類(lèi)及對(duì)應(yīng)對(duì)象 類(lèi)名 對(duì)象名 類(lèi)名 對(duì)象名 CWMPControls m_Control CString m_PathName CWMPSettings m_Setting Check CCheck 除了各控制變量的函數(shù)和響應(yīng)消息,以及相關(guān)的對(duì)話框類(lèi)的消息響應(yīng)函數(shù),因?yàn)椴シ拍J竭x擇功能添加這樣的設(shè)計(jì),因此需要使用 wm_timer 消息響應(yīng)函數(shù)和函數(shù) OnTimer()和()函數(shù)來(lái)實(shí)現(xiàn)這一功能,對(duì)話框的消息響應(yīng)程序書(shū)寫(xiě)功能的相關(guān)性。 圖 WM_TIMER消息響應(yīng)函數(shù) 11 圖 多媒體播放器界面 最終得到各個(gè)空間分布后的界面如圖 所示。檢查對(duì)話框退出按鈕,彈出提醒窗口,當(dāng)用戶點(diǎn)擊,主要是用來(lái)防止用戶不小心按下關(guān)閉按鈕使程序關(guān)閉,這有利于用戶,加強(qiáng)友好的軟件,如圖 所示。 12 圖 菜單欄 關(guān)鍵功能的實(shí)現(xiàn) 對(duì)于各個(gè)函數(shù)的介紹,本文以關(guān)鍵代碼以及注釋的方式進(jìn)行介紹,首先介紹主對(duì)話框中函數(shù)的實(shí)現(xiàn)以及說(shuō)明: (1)Onopen()。*,rmi)|*.mid。 //可選的文件類(lèi)型 13 CFileDialog dlg(true,NULL,NULL,OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT|OFN_NOCHANGEDIR,szFileFilter)。 if(()==IDOK) {while(pos!=NULL) { m_pathname=(pos)。//增加到播放列表 } } } 問(wèn)題是理解的奇怪的功能,因?yàn)榇罅康念?lèi),并且每個(gè)成員函數(shù)是不同的,更難以使用。通過(guò)增加播放目錄的路徑名主要取決于 getnextpathname()函數(shù),該()函數(shù)是添加到播放列表中的項(xiàng)目名稱 (2)Onlist()。播放列表函數(shù): void CKejianDlg::Onlist() { flag=!flag。//播放列表初始位置狀態(tài) } else 14 { SetWindowPos(NULL,0,0,590,430,SWP_NOMOVE)。為了實(shí)現(xiàn)這個(gè)功能,我會(huì)一起播放列表和播放表按鈕。 但對(duì)播放列表,它需要實(shí)現(xiàn)雙播放功能,所以加上控制列表消息映射,并選擇雙擊消息響應(yīng)函數(shù),如圖 2,13 所示。 圖 13 播放列表消息影像函數(shù)設(shè)置 CKejianDlg 具體程序如下所示: void CKejianDlg::OnDblclkList1()。//獲取選擇的行數(shù) (index,str)。//播放 m_pathname=str。 15 //在點(diǎn)擊播放時(shí)就創(chuàng)建計(jì)時(shí)器 每隔 1秒就自動(dòng)執(zhí)行下響應(yīng)函數(shù)ontimer() } ( 3) Onplay();播放函數(shù)及其他多媒體播放控制按鈕 void CKejianDlg::Onplay() { ()。 表 25響應(yīng)函數(shù)和調(diào)用函數(shù)關(guān)系 響應(yīng)函數(shù) 調(diào)用函數(shù) 響應(yīng)函數(shù) 調(diào)用函數(shù) Onfastre6verse() Reverse() Onfulscreen() (1) Onfastforward() Forward() Onmute() (m_Setting.GetMute())。具體函數(shù)如下: void CkejianDlg::Onsave() {CStdioFile file。//打開(kāi)指定文件 for(int i=0。i++) {CString strtemp。 strtemp+=\n。 //保存播放列表 } } void CkejianDlg::Ondellist() { CStdioFile file。//刪除列表 (.\\,CFile::modeCreate)。//刪除當(dāng)前光標(biāo)所選擇的行 Onsave()。初始化順序播放默認(rèn)設(shè)置,當(dāng)你雙擊發(fā)揮開(kāi)始創(chuàng)建一個(gè)計(jì)數(shù)器,每一次執(zhí)行以下的 OnTimer 函數(shù)。如果比賽 圖 M_TIMER 消息添加 順序,將自動(dòng)執(zhí)行下一個(gè)項(xiàng)目;如果是在 0 列表播放,產(chǎn)生隨機(jī)數(shù)的文件數(shù),然后執(zhí)行;如果是一首循環(huán),然后 一直執(zhí)行當(dāng)前文件。//選擇第一行 ((),m_pathname)。 //默認(rèn)播放模式為順序播放 計(jì)數(shù)器函數(shù) OnTimer 程序如下: void CKejianDlg::OnTimer(UINT nIDEvent) { int index=()。 int index=()+1。 //如果播放完最后一曲就自動(dòng)播放第一首 (index,str)。 (index)。//目的在于每次都能產(chǎn)生不同的隨機(jī)數(shù)序列 (rand()%())。 (m_pathname)。 (m_pathname)。 } ( 6) Onabout()和 Onexit()函數(shù) 因?yàn)檎{(diào)用自身編輯的對(duì)話框并且修改了工程中的 ABOUTBOX 資源,所以也要對(duì)其進(jìn)行一定的修改。 ()。添加對(duì)話框,制作簡(jiǎn)單沒(méi)有介紹,這是介紹添加對(duì)話框和相應(yīng)的類(lèi)和添加的頭文件。 圖 選擇創(chuàng)建一個(gè)新的類(lèi),你需要在輸入并輸入一個(gè)名稱,將添加一個(gè)對(duì)應(yīng)的 19 和檢查。所謂的對(duì)話框如下圖所示,和刪除在完成退出計(jì)數(shù)器,釋放內(nèi)存。 //生成 CCheckBox 類(lèi)的對(duì)象 CheckBox if(()==IDOK) //彈出對(duì)應(yīng)的模態(tài)對(duì)話框 { CDialog::OnCancel()。//退出程序時(shí)刪除計(jì)數(shù)器 } } ( 7)的菜單欄添加生產(chǎn)函數(shù) 做一個(gè)菜單欄添加只要到對(duì)話框中相應(yīng)的,本文不再。 20 3 系統(tǒng)測(cè)試 測(cè)試目的 根據(jù)用戶需求,設(shè)計(jì),概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)測(cè)試用例,測(cè)試軟件系統(tǒng)。 2:好的測(cè)試方案是可能發(fā)現(xiàn)的錯(cuò)誤的測(cè)試計(jì)劃到目前為止還沒(méi)有被發(fā)現(xiàn) 。 測(cè)試環(huán)境 Visualc++ 操作系統(tǒng) Windows xp。 調(diào)試報(bào)告 有在設(shè)計(jì)過(guò)程中的 許多錯(cuò)誤,錯(cuò)誤的搜索使用 VC++ 6 編譯,根據(jù)錯(cuò)誤,改正錯(cuò)誤。 圖 調(diào)試結(jié)果 1 最終在在線數(shù)據(jù)獲取的問(wèn)題的解決方案 : 雙 播放功能, 在播放列表中添加一個(gè)雙擊消息映射函數(shù)的實(shí)現(xiàn),然后 ondblclklist1()的代碼,從而實(shí)現(xiàn)雙播放功能。后考慮到其他類(lèi)都進(jìn)行了的類(lèi)的綁定,所以也要對(duì)CWMPControls 類(lèi)進(jìn)行綁定,其中 static_cast 相當(dāng)于將某一對(duì)象和賦值符號(hào)右邊的值進(jìn)行綁定,由于是靜態(tài)綁定,故綁定后不再改變,而后續(xù)程序中出現(xiàn)的m_Control 對(duì)象卻并未出現(xiàn)對(duì)應(yīng)的綁定,如圖 所示。之后,后續(xù)的控件的操作可以正常進(jìn)行了。在其他類(lèi)的賬戶是類(lèi)綁定,所以也被結(jié)合在 static_cast cwmpcontrols, 相當(dāng)于一個(gè)對(duì)象,指定一個(gè)符號(hào)在綁定的值的右側(cè),是靜態(tài)綁定,綁定不改變,并在隨后的程序 m_control 對(duì)象的出現(xiàn)是不受約束的相應(yīng)的。 ( 4) 停止按鈕開(kāi)始編程,直接調(diào)用 功能,如圖 所示,但當(dāng)調(diào)試時(shí),請(qǐng)單擊“停止”按鈕,玩家停止然后繼續(xù)播放下一首歌。 22 圖修改后的代碼 圖 原來(lái)的代碼 圖 ( 5) 問(wèn)題四 在退出按鈕設(shè)計(jì)的四個(gè)問(wèn)題是設(shè)計(jì)一個(gè)退出提醒功能,以防止用戶不小心使用時(shí)的錯(cuò)誤和錯(cuò)誤的 退出 程序,開(kāi)始 更正 了這一點(diǎn),然后讓學(xué)生得到答案,然后 添加另一個(gè)對(duì)話框,然后創(chuàng)建一個(gè)新的類(lèi)別,增加在頭文件 包括 “檢查 ”,然后進(jìn)行編程,以實(shí)現(xiàn)特定的功能,如圖 所示。 經(jīng)過(guò)這次課程設(shè)計(jì),讓我對(duì)于 MFC 編程的方法有了更新更全面的認(rèn)識(shí)和深入的了解,對(duì) VC++的運(yùn)用更是熟練了很多,而且有了系統(tǒng)地設(shè)計(jì)軟件的概念,這對(duì)我以后的軟件開(kāi)發(fā)打下了很好的基礎(chǔ)。 在所給的論文設(shè)計(jì)中,多媒體播放器的設(shè)計(jì)最能吸引我。然而事實(shí)往往出人意料,著手開(kāi)始設(shè)計(jì) 程序流程圖,我才發(fā)現(xiàn)去年學(xué)的 C++語(yǔ)言知識(shí)所剩無(wú)幾,很多操作都不能熟練完成,只能找到以前的課本和相關(guān)資料再學(xué)習(xí)。由此,我深刻地體會(huì)到,在編程之前,畫(huà)程序流程圖具有不可取代的重要性。聽(tīng)取老師意見(jiàn)后,我采用 SetPos 函數(shù)成功實(shí)現(xiàn)該功能。 總而言之,這次課程設(shè)計(jì)讓我學(xué)會(huì)了很多,發(fā)現(xiàn)了自己的不足,加深了對(duì)提出問(wèn)題 分析問(wèn)題 解決問(wèn)題這一思維方式的運(yùn)用,鍛煉了自己的邏輯思維和編程能力,為以后工作學(xué)習(xí)打下了較好的基礎(chǔ)。在此次論文的制作過(guò)程中,遇到了大量的問(wèn)題這使我明白了自己的很多不足之處,在學(xué)術(shù)上是永無(wú)止境的,所以我還是要更加努力的前進(jìn)去壯大和充實(shí)自己,同時(shí)也使我深深的意識(shí)到不管自己是否察覺(jué),身邊都會(huì)有很多人在幫助自己。 26 參 考 文 獻(xiàn) [1] 《 Visual C + + 多媒體開(kāi)發(fā)指南 》 . 李博軒 . 清華大學(xué)出版社 , 2021. [2]《 深入解析 MFC》 . GEORGE SHEPHERDSCOT WINGO 著 , 趙劍云,卿瑾譯 . 北京:中國(guó)電力出版社, 2021. [3]《 Visual C + +編程技巧精選 500 例 》 . 羅斌 .中國(guó)水利水電出版社, 2021. [4]《 Visual C + + 數(shù)據(jù)開(kāi)發(fā)實(shí)例 》 .姚予疆 . 人民郵電出版社 2021. [5] [6] 基于 svc++的多媒體設(shè)計(jì)與應(yīng)用 百度文庫(kù) . [7]《 Visual C++.NET 多媒體編程 [M]》 .周長(zhǎng)發(fā) .電子工業(yè)出版社 .2021. [8]《 面向?qū)ο蟪绦蛟O(shè)計(jì)與 VC++實(shí)踐 [M]》 .揣錦華 .西安電子科技大學(xué)出版社 .2021. [9]《 Visual C++教程 [M]》 .鄭阿奇 .北京:機(jī)械工業(yè)出版社 .2021. [10]《 流媒體寶典 》 .Steve .2021. 27
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1