vc多媒体播放器5577.docx

上传人:you****now 文档编号:62510348 上传时间:2022-11-22 格式:DOCX 页数:36 大小:985.51KB
返回 下载 相关 举报
vc多媒体播放器5577.docx_第1页
第1页 / 共36页
vc多媒体播放器5577.docx_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《vc多媒体播放器5577.docx》由会员分享,可在线阅读,更多相关《vc多媒体播放器5577.docx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、武汉理工大学专业课程设计3(面向对象程序设计)课程设计说明书目录1.基本本功能描描述12.设计计思路113.软件件设计333.1设设计步骤骤33.2界界面设计计63.3关关键功能能的实现现94结论与与心得体体会1665参考文文献1776思考题题177附录1187.1调调试报告告187.2测测试结果果207.3关关键源代代码21135多媒体播播放器1. 基本功能能描述多媒体播播放软件件现在几几乎成为为每一台台家用计计算机的的装机必必备软件件,比较较流行的的有迅雷雷播放器器、WiindoowsMMediiaPllayeer以及及金山影影霸等等等,通过过这些软软件能够够播放RRM、RMVVB、MP3

2、、MPEEG、DATT等多种种格式的的多媒体体文件。这这些商业业软件在在功能上上已经做做的相当当完备,也也符合大大多数普普通消费费者的的的胃口,但但很多人人电脑里里总是安安装了多多种播放放器,因因为不同同的播放放器有不不同的特特点,不不是每个个人都执执著于用用一款播播放器,所所以设计计一款符符合自己己使用习习惯的播播放器是是很有可可行性的的。使用VCC+66.0强强大的MMFC、ApppWizzardd、ClaassWWizaard和和其中的的多种控控件可以以很方便便地建立立各种应应用程序序。同时时想要实实现更高高级更复复杂的功功能,也也可以借借助AcctivveX控控件资源源,用这这些现有有

3、的控件件资源,可可以省去去自己编编程的复复杂过程程,从而而实现更更高级的的功能。本本次课程程设计要要使用VVC+6.00自带的的一个AActiiveXX控件WiindoowsMMediiaPllayeer控件件,建立立自己的的多媒体体播放器器。此多媒体体播放器器具有打打开文件件、播放放、暂停停、全屏屏、音量量调节、快快进、快快退等基基本播放放功能,并并且可以以播放:*.mpp3,*.wmma,*.mddi,*.waav,*avii,*datt等格式式的音频频视频文文件。同同时还具具有自制制的可隐隐藏的播播放列表表,并且且可以在在播放模模式中选选择顺序序播放、随随机播放放、单曲曲循环三三种方式式

4、随机即即模式放放器具有有打开文文件、播播放、暂暂停、关关闭,就就是每个个人都执执著与111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111。同时时,我也也添加了了保存列列表的功功能,当当下一次次打开时时能保留留上一次次保存的的播放列列表,当当然也添添加了删删除列表表和删除除当前的的功能,更更具人性性化。2. 设计思路路根据各个个按钮控控件功能能以及WWinddowssMeddiaPPlayyer控控件的特特点,首首先要在在头文件件中将CCWMPPConntr

5、ool,CWMMPSeettiingss等类的的对象的的绑定以以及定义义,在后后面的程程序中需需要调用用这些类类的成员员函数。对于打开开文件按按钮,需需要调用用通用文文件对话话框类,并并利用llisttboxx中的AdddSttrinng函数数把选中中的文件件添加到到播放列列表中,在在MFCC学习中中有涉及及。对于于一些基基本的功功能的实实现,如如播放、暂暂停、全全屏、音音量增大大、音量量减小、静静音、快快进、快快退等功功能,主主要调用用CWMMPCoontrrol和和CWMMPPllayeer类中中的成员员函数来来进行实实现。对于播放放列表,这这次设计计使用了了SettWinndowwPos

6、s函数来来改变一一个子窗窗口弹出出的尺寸寸和方向向,并一一些相关关的函数数实现了了保存列列表、删删除列表表、删除除当前的的功能。对对应播放放列表,我我还添加加了播放放模式选选择的功功能,提提供了顺顺序播放放、随即即播放、单单曲循环环三种选选择。这这当中运运用的oontiimerr函数和和setttimmer函函数来控控制播放放模式。参照以上的设计开始初始化打开?设置文件类型过滤添加到播放列表YN读取保存的播放列表播放播放控制播放模式退出?N退出Y思想,流程图如图1所示:图1 流流程图3.软件件设计3.1设设计步骤骤首先,打打开MiicroosofftViisuaalSttudiio6.0软件件

7、,新建建一个工工程如图图2所示,以以ZhuuanggWennfenng为工工程名,然然后将此此工程定定义为基基于对话话框的MMFC应应用程序序如图33所示,点点击完成成就成功功建立了了一个基基于对话话框的工工程。图2 工工程建立立图3基于于对话框框的MFFC程序序在建立好好工程之之后,首首先是WWinddowssMeddiaPPlayyer控控件的添添加:建建立空白白对话框框之后,在在对话框框的空白白处单击击鼠标右右键,选选择InnserrtAcctivveXCConttroll菜单项项。选择择WinndowwsMeediaaPlaayerr控件,如如图4所示。加加入控件件后,此此时该控控件与

8、该该对话框框并没有有联系,需需要对其其进行变变量的关关联。图4 WWinddowssMeddiaPPlayyer控控件的添添加添加完该该控件之之后可以以发现,该该控件与与右边控控件工具具栏添加加的控件件的形式式与功能能完全不不同,是是一种更更为高级级的控件件,将该该控件名名改为IIDC_plaayerr,如图图5所示。图5 WWinddowssMeddiaPPlayyer控控件虽然已已已经添加加了该控控件,但但是可以以发现,改改控件没没有与工工程中的的对话框框发生任任何联系系,所以以需要对对其进行行变量的的关联,所所属类为为ZhuuanggWennfenng类,变变量类型型为CWWPPllay

9、eer4如图6所示。图6 关关联变量量关联变量量之后,才才算是真真正的添添加完了了该控件件,可以以发现在在关联变变量之后后,控件件工具栏栏多了WWinddowssMeddiaPPlayyer控控件的选选项,并并且在SSourrceFFilees中增增加了117个类类,相应应的头文文件也增增加了117个,如如图7所示。图7 添添加控件件后的变变化其中最主主要的类类为Cwwmppplayyer44,Cwmmpcoontrrolss,Cwmmpmeediaa,Cwmmppllayllistt,Cwmmpseettiingss五大类类。Cwwmppplayyer44类主要要是关于于对其他他类的对对象的

10、调调用以及及基本的的控件功功能的实实现,提提供了与与WinndowwsMeediaaPlaayerr控件进进行交互互的基本本方法,其其中部分分成员函函数还能能够进一一步获取取得到其其他相关关类对象象的实例例;Cwwmpcconttrolls类主主要是对对控件的的更多的的操作;Cwmmpmeediaa类主要要是对于于媒体文文件资源源的一些些操作;Cwmmppllayllistt类主要要是关于于播放列列表的操操作;CCwmppsetttinngs类类主要是是对于媒媒体文件件中的一一些基本本设置的的操作。对于该控控件的添添加以及及内部函函数的理理解需要要较多时时间熟悉悉,添加加完此关关键控件件之后,

11、进进行界面面的设计计。3.2界界面设计计首先是打打开按钮钮,用于于媒体文文件的打打开。然然后依次次是,播播放、暂暂停、全全屏、快快进、快快退、音音量增大大、音量量减小、静静音、播播放停止止、退出出等按钮钮。对其其进行变变量的关关联,以以及IDD的修改改,修改改结果如如表1、表2所示:表1 控控件IDD以及关关联变量量控件Caaptiion按钮IDD关联变量量类型关联变量量名称WMPllayeerIDC_plaayerrCWMPPlayyer44m_ZhhuanngWeenfeeng表2 控控件IDD以及对对应响应应函数控件Caaptiion按钮IDD消息响应应函数打开IDC_opeenOnop

12、pen播放IDC_plaayOnpllay暂停IDC_pauuseOnpaausee全屏IDC_fulllscrreennOnfuullscrreenn播放列表表IDC_lisstOnliist列表框IDC_LISST1OnDbblcllkLiist11快进IDC_fasstfoorwaardOnfaastfforwwardd快退IDC_fasstreeverrseOnfaastrreveersee+(音量量增加)IDC_adddvollOnadddvool-(音量量减小)IDC_deccvollOndeecvool静音IDC_mutteOnmuute表2 控控件IDD以及对对应响应应函数控件

13、Caaptiion按钮IDD消息响应应函数停止IDC_stoopOnsttop保存列表表IDC_savveOnsaave删除列表表IDC_delllisstOndeelliist删除当前前IDC_delllisstcuurOndeelliistccur退出IDC_exiitOnexxit关于IDC_abooutOnabboutt以上为有有对应控控件的对对象的关关联,除除了有对对应控件件的,还还需要有有WinndowwsMeediaaPlaayerr控件所所生成的的17个类类中的几几个重要要的类进进行对象象的定义义,而可可知,对对于成员员对象的的定义和和成员函函数的声声明都放放在头文文件中,此此

14、次设计计共主要要用到其其中3个类,因因为设计计了一个个退出提提醒弹出出框,所所以也要要对其定定义,具具体如表表3所示:表3 其其他类及及对应对对象类名对象名类名对象名CWMPPConntroolsm_CoontrrolCStrringgm_PaathNNameeCWMPPSetttinngsm_SeettiingChecckCCheeck除了对各各个控件件关联变变量以及及消息响响应函数数,还要要对对话话框类进进行消息息响应函函数的关关联,因因为此次次设计中中添加了了播放模模式选择择的功能能,所以以需要用用到WMM_TIMMER消消息响应应函数以以及SeetTiimerr()和OnTTimeer

15、()函数来来实现这这项功能能,将对对话框类类进行该该消息响响应函数数的关联联并书写写程序。添添加方法法如图88所示。图8 添添加WMM_TIMMER消消息响应应函数最终得到到各个空空间分布布后的界界面如图图9所示。图9 多多媒体播播放器界界面除了以上上主对话话框外,我我还对AABOUUTBOOX进行行了重新新设计,也也自制了了一个CChecck对话话框,其其中ABBOUTTBOXX如图100所示。CChecck对话话框是在在用户点点击退出出按钮自自动弹出出的提醒醒窗口,主主要用于于防止用用户误按按关闭按按钮导致致程序关关闭,有有利于用用户的使使用,增增强软件件的友好好性,如如图111所示。图1

16、0 修改后后的ABBOUTTBOXX对话框框图11 提醒对对话框关于菜单单的制作作,首先先,需要要在ReesouurceeVieew中加加入资源源Mennu,后后增加对对应的菜菜单项以以及菜单单自己布布局,下下拉菜单单则需要要和按钮钮关联,其其方法是是将其IID和按按钮的IID一样样,菜单单布局图图12所示示。图 122 菜单单栏3.3关关键功能能的实现现对于各个个函数的的介绍,本本文以关关键代码码以及注注释的方方式进行行介绍,首首先介绍绍主对话话框中函函数的实实现以及及说明:(1)OOnoppen();打打开函数数voiddCZhhuanngWeenfeengDDlg:Onnopeen()

17、charrszFFileeFillterr=AlllFille(*.*)|*.*|AVIIFille(*.avvi)|*.aavi|Mp33Fille(*.mpp3)|*.mmp3|MPEEGFiile(*.mmpegg)|*.mppeg|MeddiaFFilee(*.asff)|*.assf|ViddeoFFilee(*.datt)|*.daat|MPGGAFiile(*.mmpgaa)|*.mppga|WavveFiile(*.wwav)|*.wavv|MovvieFFilee(*.movv)|*.moov|MiddFille(*.miid;*,rmmi)|*.mmid;*.rrmi|Wm

18、aaFille(*.wmma)|*.wwma|RmvvbFiile(*.rrmvbb)|*.rmmvb|AlllFille(*.*)|*.*|; /可可选的文文件类型型CFilleDiialoogdllg(truue,NULLL,NULLL,OFNN_HIDDEREEADOONLYY|OFNN_ALLLOWMMULTTISEELECCT|OFNN_NOCCHANNGEDDIR,szFFileeFillterr); /OOFN_ALLLOWMMULTTISEELECCT是允允许选择择多个文文件OFFN_NOCCHANNGEDDIR是是不改变变当前目目录POSIITIOONpoos=dlgg.Ge

19、ttStaartPPosiitioon();if(ddlg.DoMModaal()=IIDOKK) whhilee(poss!=NUULL)m_paathnnamee=dlgg.GettNexxtPaathNNamee(poss);/得到到完整的的文件名名,包括括目录名名和扩展展名m_liist.AdddStrringg(m_patthnaame);/增加到到播放列列表 其中难点点在于对对于陌生生函数的的理解,由由于类数数目较多多,各类类又有各各自不同同的成员员函数,运运用起来来比较困困难。除除了调用用通用文文件对话话框和较较为熟悉悉之外,其其他的函函数都是是平时没没有见过过的。播播放列表表中

20、获取取路径名名是靠的的添加主主要依靠靠于GeetNeextPPathhNamme()函数,而而m_lisst.AdddStrringg()函数数是将项项目名添添加到播播放列表表中。 (2)OOnliist();播播放列表表按钮函函数和OOnDbblcllkLiist11();播放列列表函数数:voiddCZhhuanngWeenfeengDDlg:Onnlisst() flagg=!fllag;if(!flaag)SetWWinddowPPos(NULLL,00,0,4000,4330,SSWP_NOMMOVEE);/播放放列表初初始位置置状态elseeSetWWinddowPPos(NULL

21、L,00,0,5900,4330,SSWP_NOMMOVEE);/点击击按钮后后播放列列表位置置状态对于播放放列表按按钮,设设计在那那的功能能是运行行软件时时播放器器的播放放列表是是隐藏的的,当点点击按钮钮时,播播放列表表弹出。为为了实现现这个功功能,我我将播放放列表LLISTT1和播放放列表按按钮关联联起来,关关系设为为控制。为为此,在在程序定定义了一一个全局局变量fflagg,将其其设为一一个标志志,在初初始化时时定义窗窗口无相相对位移移,当点点击按钮钮是,窗窗口位移移,因此此就实现现了播放放列表的的隐藏和和出现的的功能。而而对于播播放列表表,则要要求它实实现双击击播放功功能,所所以对列列

22、表控件件增加一一个消息息映射,并并选择双双击消息息函数响响应,如如图133所示。在在其中编编程时也也加入了了执行响响应函数数SettTimmer(),当当点击函函数时就就开始创创建计数数器,以以便实现现播放模模式的功功能。图13 播放列列表消息息映射函函数设置置具体程序序如下所所示:voiddCZhhuanngWeenfeengDDlg:OnnDbllclkkLisst1();/双击击播放函函数CStrringgstrrintiindeex=m_lisst.GettCurrSell();/获获取选择择的行数数m_liist.GettTexxt(inddex,strr);m_ZhhuanngWe

23、enfeeng.SettUrll(strr);/播放m_paathnnamee=strr;SetTTimeer(11,10000,NULLL); /在点击击播放时时就创建建计时器器每隔1秒就自自动执行行下响应应函数oontiimerr()(3)OOnpllay();播播放函数数及其他他多媒体体播放控控制按钮钮voiddCZhhuanngWeenfeengDDlg:Onnplaay() m_CConttroll.plaay(); /暂停停后继续续播放如同播放放函数所所示,其其他控制制播放状状态的函函数都可可以直接接调用添添加的控控件的类类的对象象调用实实现,按按钮响应应函数和和调用的的函数关关系

24、如表表4所示。表4响应应函数和和调用函函数关系系响应函数数调用函数数响应函数数调用函数数Onfaastrreveersee()m_Coontrrol.fasstReeverrse()Onfuulsccreeen()m_ZhhuanngWeenfeeng.SettFulllSccreeen(11)Onfaastfforwwardd()m_Coontrrol.fasstFoorwaard()Onmuute()m_Seettiing.SettVollumee(m_Setttinng.GettMutte();Onsttop()m_Coontrrol.stoop()Onadddvool()m_Seett

25、iing.SettVollumee(m_Setttinng.GettVollumee()+10)Onpaausee()m_Coontrrol.pauuse()Ondeecvool()m_Seettiing.SettVollumee(m_Setttinng.GettVollumee()-10(4)播播放列表表状态这款播放放器设计计了保存存播放列列表、删删除播放放列表、删删除当前前三种对对播放列列表状态态的控制制,其中中函数主主要调用用了m_lisst类中中的函数数,在初初始化是是加入了了一个读读取上次次保存的的播放列列表的指指针函数数,增加加了播放放列表的的人性化化。具体体函数如如下:voidd

26、CZhhuanngWeenfeengDDlg:Onnsavve() CStddioFFileefille;filee.Opeen(.lisst.txtt,CFFilee:moodeCCreaate|CFiile:moodeRReaddWriite|CFiile:tyypeTTextt);/打开指指定文件件for(intti=0;iSeetChheckk(truue);/默认认播放模模式为顺顺序播放放计数器函函数OnnTimmer程程序如下下:voiddCZhhuanngWeenfeengDDlg:OnnTimmer(UINNTnIIDEvventt) intiindeex=m_Zhuuangg

27、Wennfenng.GettPlaaySttatee();/获获取播放放状态if(iindeex=1)/如果果播放完完成if(CBButtton *)GGetDDlgIItemm(IDCC_RADDIO11)-GeetChheckk()/如如果是顺顺序播放放CStrringgstrr;intiindeex=m_lisst.GettCurrSell()+1;if(iindeex=m_lisst.GettCouunt() inddex=0;/如果果播放完完最后一一曲就自自动播放放第一首首m_liist.GettTexxt(inddex,strr);m_ZhhuanngWeenfeeng.SettU

28、rll(strr);m_liist.SettCurrSell(inddex);/自动置置光标/这这样就实实现了顺顺序播放放if(CBButtton *)GGetDDlgIItemm(IDCC_RADDIO22)-GeetChheckk()/随随机播放放srannd(timme(00);/目目的在于于每次都都能产生生不同的的随机数数序列m_liist.SettCurrSell(rannd()%m_lisst.GettCouunt();/随随机选择择0-m_lisst.GettCouunt()-11的任意意一个数数即随即即选择mm_lisst里的的文件m_liist.GettTexxt(m_lis

29、st.GettCurrSell(),m_patthnaame);m_ZhhuanngWeenfeeng.SettUrll(m_patthnaame);if(CBButtton *)GGetDDlgIItemm(IDCC_RADDIO33)-GeetChheckk()/单单曲循环环m_liist.GettTexxt(m_lisst.GettCurrSell(),m_patthnaame);m_ZhhuanngWeenfeeng.SettUrll(m_patthnaame);CDiaalogg:OnnTimmer(nIDDEveent);(6)OOnabouut()和Onexxit()函数数因为调

30、用用自身编编辑的对对话框并并且修改改了工程程中的AABOUUTBOOX资源源,所以以也要对对其进行行一定的的修改。首首先,是是对Onnaboout()函数数的修改改:voiddCZhhuanngWeenfeengDDlg:Onnaboout() CAbooutDDlgaabouutDllg;abouutDllg.DoMModaal();其次,是是对Onnexiit()函数的的重载。对对于添加加自制的的对话框框,制作作方面较较为简单单不作介介绍,在在此要介介绍的是是自制对对话框的的添加以以及对应应类和头头文件的的添加。在制作好好对话框框后,利利用CllasssWizzardd对该对对话框进进行类

31、的的关联,由由于要调调用该对对话框,故故要生成成该对话话框类自自身的对对象如图图15所示示。图14 生成自自制对话话框的新新类选择Crreatteanewwclaass后后需要输输入一个个类名CCCheeck,在在输入确确定之后后会在工工程的FFileeVieew中增增加一个个对应的的Cheeck.cppp和Cheeck.h文件,之之后便可可以对该该自制对对话框类类及其对对象进行行操作。故故调用该该对话框框的方法法就是如如下所示示,在完完成退出出时还要要删除计计数器,释释放内存存。voiddCZhhuanngWeenfeengDDlg:Onnexiit() CCheeckCChecck; /生

32、生成CCChecckBoox类的的对象CChecckBooxif(CChecck.DoMModaal()=IIDOKK) /弹出出对应的的模态对对话框CDiaalogg:OnnCanncell(); /点击确确定则退退出KilllTimmer(1);/退退出程序序时删除除计数器器(7)菜菜单栏的的添加制制作以及及功能菜单栏的的制作和和添加不不难,只只要将其其对应到到对话框框中即可可,文中中不再赘赘述。各各个菜单单中的菜菜单项的的功能,只只要将对对应的菜菜单项改改成与对对应功能能的按钮钮控件的的ID相同同即可方方便快速速地实现现。4结论与与心得体体会经过一周周的面向向对象程程序课程程设计,我我学

33、到了了很多。在在这一周周的实际际动手学学习中,我我对VCC+这门门课程有有了更深深刻的认认识,熟熟悉了用用MFCC创建基基于对话话框的应应用程序序,让我我对于MMFC编编程的方方法有了了更新更更全面的的认识。这这次课程程设计我我做了多多媒体视视频播放放器的设设计,播播放器主主要对常常用的多多媒体格格式的文文件实现现播放和和控制。接触题目目开始做做后,同同学们手手中的VVC+6.00都没有有ActtiveeMovvie这这一控件件,只能能选用WWinddowssMeddiaPPlayyer控控件,而而同时网网上虽然然有点关关于WiindoowsMMediiaPllayeer控件件的资料料,但按按

34、照网上上的方法法来添加加控件并并编程却却根本无无法编译译。所以以对于该该控件的的添加方方法和编编程基本本是在摸摸索实践践中出来来的。C+作作为我们们的主要要专业课课程之一一,开始始觉得那那些程序序枯燥无无味,但但在这次次课程设设计后我我发现在在自己一一点一滴滴的努力力中对CC+程序序的兴趣趣也在增增加。可可是在制制作的过过程中,编编程总是是运行错错误成为为了我非非常大的的困难之之一,常常常在悉悉心时久久的编程程后,运运行出现现错误,往往往是越越改越错错,导致致此段代代码需要要重新编编写,但但在前面面代码的的不断出出错与修修改的同同时,我我们也学学到了更更多,领领悟到了了上课所所没有领领会的知知

35、识点,所所以在后后面的编编程中就就越编越越顺。在在程序设设计时不不要妄想想一次就就将整个个程序设设计好,反反复修改改,不断断改进是是程序设设计的必必经之路路。最终终于于顺利完完成了本本人所想想实现的的大部分分功能,掌掌握了一一个全新新的类的的部分功功能的使使用,感感觉受益益匪浅,但但也由于于本人能能力有限限,才疏疏学浅,很很多地方方还有疏疏漏,没没有实现现一些想想要实现现的功能能。最后后,我觉觉的做CC+语言言课程设设计是十十分有意意义的,而而且是十十分有必必要的,我我们在课课堂上掌掌握的只只是专业业课的理理论知识识,而这这次课程程设计为为我们提提供了很很好的实实践平台台。让我我们增强强了动手

36、手编程,自自己调试试,寻找找错误的的能力,为为以后进进一步的的学好CC+语言言提供了了基础。5参考文文献1周周长发.VissuallC+.NETT多媒体体编程M.电子子工业出出版社.200022揣揣锦华.面向对对象程序序设计与与VC+实践M.西安安电子科科技大学学出版社社.200053郑郑阿奇.VissuallC+教程程M.北京京:机械械工业出出版社.200044SStevveMaack.流媒体体宝典.电子工工业出版版社.2200335老老虎工作作室.举一反反三VissuallC+程序序设计实实战训练练M.北京京:人民民邮电出出版社.200046思考题题1、控件件自带的的类和本本程序中中的类是

37、是如何共共同作用用的?答:首先,控控件中的的类必然然会在对对话框的的主程序序中被调调用,那那么就要要在主程程序中#inccludde入对对应类的的头文件件;然后后对需要要用到的的类生成成对应的的对象以以实现类类中函数数的使用用。在完完成控件件自带类类的函数数在程序序中的使使用之后后,还需需要调用用对话框框自身的的函数,比比如WMM_TIMMER消消息及消消息响应应函数OOnTiimerr()等函函数,以以及各控控件对应应的消息息响应函函数,并并且OnnIniitDiialoog()函数等等也需要要做一些些改动,添添加一些些与控件件类有关关的函数数。如此此便可以以实现控控件自带带类和本本程序中中

38、的类的的共同作作用。2、说明明程序中中调用的的控件函函数的作作用?答:各控控件有不不同的函函数对应应,分别别实现不不同功能能,分别别为:表5 调调用的空空间函数数的作用用功能控件函数数功能控件函数数打开Onoppen()+(音量量增大)Onadddvool()播放Onpllay()-(音量量减小)Ondeecvool()暂停Onpaausee()静音Onmuute()停止Onsttop()退出Onexxit()播放列表表Onliist()保存列表表Onsaave()快进Onfaastfforwwardd()删除列表表Ondeelliist()快退Onfaastrreveersee()删除当前前

39、Ondeelliistccur()全屏Onfuullsscreeen()关于Onabboutt()7附录7.1调调试报告告在设计过过程中出出现了许许多错误误,利用用VC+6.00中的编编译器进进行错误误的查找找,根据据提示的的错误,对对处错误误进行改改正。小小错误较较多在此此不赘述述,都是是一些与与未加对对应头文文件,未未定义正正确变量量名有关关的小错错误,也也较容易易纠正,下下文将叙叙述调试试过程中中的错误误以及改改正办法法(1)问问题一在设计播播放列表表时,当当双击播播放列表表里的成成员时并并没有播播放文件件,当时时一直修修改代码码却没有有得到改改变,以以至于一一段时间间后用了了一个按按钮

40、代替替了双击击播放的的功能如如图155所示。图15 调试结结果1后来又觉觉得不甘甘心,所所以就一一直找资资料,最最后在网网上的资资料里学学到了解解决这个个问题的的方法。实实现双击击播放功功能要先先对播放放列表增增加一个个双击消消息映射射函数OOnDbblcllkLiist11(),然然后再编编代码,这这样就实实现双击击播放的的功能。(2)问问题二图16 类绑定定此段程序序在OnnIniitDiialoog()函数中中,连接接编译都都未报错错,但是是播放、暂暂停等多多个按钮钮控件无无法工作作。后考考虑到其其他类都都进行了了的类的的绑定,所所以也要要对CWWMPCConttrolls类进进行绑定定

41、,其中中staaticc_casst相当当于将某某一对象象和赋值值符号右右边的值值进行绑绑定,由由于是静静态绑定定,故绑绑定后不不再改变变,而后后续程序序中出现现的m_Conntrool对象象却并未未出现对对应的绑绑定,如如图166所示。添添加代码码:m_Coontrrol = sstattic_casst(m_WMPPlayyer.GettCurrrenntCoontrrol();之后,后后续的控控件的操操作可以以正常进进行了。(3)问问题三对于停止止按钮编编程时,一一开始直直接调用用了m_Conntrool.stoop函数数,如图图17所示示,但调调试时当当点击停停止按钮钮时,本本次播放放

42、时停止止了但是是紧接着着却继续续播放下下一曲目目。后来来经过分分析发现现,原来来是计数数函数的的问题,由由于添加加了播放放模式的的功能,当当停止时时计数器器并没有有停止工工作,当当下一轮轮响应时时就执行行了继续续播放的的功能,所所以后来来又加了了一句删删除计数数器的代代码:KKilllTimmer(1),如如图188所示,问问题就得得到了解解决。图17 原来的的代码图图18 修改后后的代码码(4)问问题四在设计退退出按钮钮是想要要设计一一个退出出提醒功功能,为为了防止止用户在在使用时时不小心心因为按按错而误误关程序序,一开开始一直直不得要要领,后后来经过过询问同同学得到到了想要要的答案案,那新新添加一一个对话话框,然然后新建建一个类类,在增增加一个个头文件件#inccludde Cheeck.h,然后后再进行行编程,具具体实现现功能如如图199所示。图19 退出提提醒功能能7.2测测试结果果图20 运行时时读取上上一次保保存的播播放列表表图21视频频播放暂暂停、全全屏、音音量功能能等图22 刚运行行时隐藏藏播放列列表图23 关于对对话框图24 菜单功功能图25 退出提提

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理制度

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁