收藏 分享(赏)

dvd仿真程序设计_面向对象程序课程设计说明书.doc

上传人:无敌 文档编号:599908 上传时间:2018-04-14 格式:DOC 页数:39 大小:606.50KB
下载 相关 举报
dvd仿真程序设计_面向对象程序课程设计说明书.doc_第1页
第1页 / 共39页
dvd仿真程序设计_面向对象程序课程设计说明书.doc_第2页
第2页 / 共39页
dvd仿真程序设计_面向对象程序课程设计说明书.doc_第3页
第3页 / 共39页
dvd仿真程序设计_面向对象程序课程设计说明书.doc_第4页
第4页 / 共39页
dvd仿真程序设计_面向对象程序课程设计说明书.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、河南科技大学课 程 设 计 说 明 书课程名称 面向对象程序课程设计 题 目 DVD 仿真程序设计 院 系 电子信息工程学院 课程设计任务书课程设计题目 DVD 仿真程序设计姓名 学号 专业班级 计科 101组别 组长 同组成员 指导教师课程设计目的通过本课程设计,使学生巩固面向对象程序设计的基本概念、原理和技术,学会使用 C+语言进行简单程序的开发,将理论与实际相结合,完成一个小型程序的设计与实现,并在此基础上强化学生的实践意识,提高其实际动手能力和创新能力。课程设计环境硬件:装有 Windows 操作系统的计算机软件:Visual C+6.0课程设计任务和要求任务要求:1根据实际 DVD

2、的运行状况进行需求分析;2抽象 DVD 运行算法;3设计 DVD 运行程序及人机交互界面;4模块功能满足要求、界面友好、具有一定的健壮性;5撰写出符合要求的课程设计报告。参考文献1郑秋生、吴庆涛, C/C+程序设计 ,北京:电子工业出版社2谭浩强 C+程序设计 ,北京:清华大学出版社时 间 进 度 安 排序号 起止日期 工 作 内 容1 3.4-3.5 学生熟悉题目背景,查阅资料2 3.6-3.13 学生进行功能模块设计、编码、测试3 3.14-3.15 程序验收4 3.16 根据设计内容形成课程设计文档,撰写课程设计报告5 3.17 上交课程设计报告任课教师:刘中华、张晓玲、李艳霞 时间:2

3、013.3.3课程设计报告文档题目: DVD 仿真程序设计 一引言1编写目的:实现模拟 DVD 的功能 需要包含数据显示区域(相当于显示类的产品) ,DVD 模拟区域,实现模拟 DVD 的快进,快退,播放,暂停,菜单,上一首,下一首,音量的加,音量减的功能。此外模拟了一个接口按钮,用于DVD 向显示设备的数据输入。还模拟了一个 DVD 的电源开关。至此,实现此次 DVD 仿真模拟的设计目的。2. 定义:MFC (Microsoft Foundation Classes):是一个微软公司提供的类库(class libraries) ,以 C+类的形式封装了 Windows 的 API,并且包含一

4、个应用程序框架,以减少 应用程序开 发人员的工作量。其中包含的类包含大量 Windows 句柄封装类和很多 Windows 的内建控件和组件的封装类3参考资料:1 郑秋生 . c/c+程序设计教程面向对象分册. 北京:电子工业出版社,20122 邱勇、肖春宝、白秀玲. 可视化程序设计. 北京:清华大学出版社3 黄维通. visual c+面向对象与可视化程序设计. 北京:清华大学出版社二任务的描述1目标:通过本课程设计,使学生巩固面向对象程序设计的基本概念、原理和技术,学会使用 C+语言进行简单程序的开发,将理论与实际相结合,完成一个小型程序的设计与实现,并在此基础上强化学生的实践意识,提高其

5、实际动手能力和创新能力。2. 功能描述:DVD 的仿真模拟分为数据显示区域(相当于显示类的产品) ,DVD模拟区域,模拟 DVD 的快进,快退,播放,暂停,菜单,上一首,下一首,音量的加,音量减的功能。此外模拟了一个接口按钮,用于 DVD 向显示设备的数据输入。模拟了一个 DVD 的电源开关。光碟数据的存储区域模拟。点击按钮可以打开数据中心仓库,区域 1:可以点击此按钮打开光碟数据存储仓库,打开后的界面如下图所示。区域 2:点击鼠标的右键可以打开右键菜单:1.添加文件到列表 2.删除列表中文件区域 3:实现 DVD 的模拟功能:点击快进按钮实现快进功能;点击快退按钮实现快退功能;点击播放按钮实

6、现播放功能;点击暂停按钮实现暂停功能;点击+按钮实现音量的加功能;点击-按钮实现音量减的功能;点击菜单按钮可以实现 DVD 光碟返回到菜单的功能;模拟了一个接口按钮,相当于 DVD 像显示接口插入的一条数据线,用于 DVD向显示设备的数据输入;电源开关实现 DVD 机关闭的功能。区域 1:可以点击此按钮打开光碟数据然后直接打开播放器小窗口播放,播放器的小窗口如下图。鼠标右键点击此按钮的可以弹出右键菜单,右键菜单响应的事件功能有,播放和查看文件的大小属性。区域 2:点击鼠标的右键可以打开右键菜单:1.添加文件到列表 2.删除列表中文件区域 3:显示当前播放文件的路径区域 4:点击可以打开文件选择

7、对话框,实现让用户选择非 DVD 格式的文件。这是在DVD 基础上对于播放的扩展。功能的增强。区域 5:点击此按钮可以查看播放器支持的文件格式。区域 1:可以点击对应的菜单实现对应的音影的播放功能。区域 2:点击全屏按钮实现全屏播放上图播放 DVD 时候的小窗口播放界面。上面为 DVD 文件的播放菜单,DVD 文件是用转换工具转换的 DVD 整个光碟,由于转换的速度较慢,且转换后文件较大,一个大约 6G,一个大约 2G,转换时间周期较长,用晚上转换的。转换后的 DVD 文件没法加入电子档。总计 8G。在此说明一下。3性能描述(1)数据精确度:播放的时间在毫秒级(2)时间特性:响应时间,更新处理

8、时间,运行时间等都较短。4运行环境:硬件:Windows7 操作系统平台软件:Visual C+6.05条件与限制:条件是由于播放 DVD 的文件解码较苛刻,系统必须安装有DVD 格式的解码器。三任务设计1类的划分:(1)类 1:class CAaDlg : public CDialogpublic:CAaDlg(CWnd* pParent = NULL); / standard constructorenum IDD = IDD_AA_DIALOG ;CListBox m_list;CButton m_Open;CButton m_Play;CButton m_Up;CButton m_St

9、op;CButton m_Down1;int t;bool t1;CButton m_Slow;CButton m_VolSmall;CButton m_VolBig;CButton m_Menu;CButton m_JieKou;CButton m_Forhead;CButton m_Close;CWMPPlayer4 m_WMPlayer;CWMPControls m_Control;CWMPDVD m_wmpDVD;CWMPSettings m_set;CWMPPlaylist m_playlist; CWMPMedia m_media;CWMPPlayer4 m_WMp;CString

10、 str1;Dlg1 dlg1;int k;public:virtual BOOL PreTranslateMessage(MSG* pMsg);protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV supportvirtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);protected:HICON m_hIcon;virtual BOOL OnInitDialog();afx_msg void OnSysCommand(UINT nID, LPARAM lPa

11、ram);afx_msg void OnPaint();afx_msg HCURSOR OnQueryDragIcon();afx_msg void OnBUTTOClose();afx_msg void OnBUTTONForhead();afx_msg void OnBUTTOSlow();afx_msg void OnBUTTONVolBig();afx_msg void OnBUTTONVolSmall();afx_msg void OnBUTTONJIeKou();afx_msg void OnBUTTONDown();afx_msg void OnBUTTOPlay();afx_m

12、sg void OnBUTTONStop();afx_msg void OnButtonup();afx_msg void OnBUTTONMenu();afx_msg void OnOpen();afx_msg void OnDblclkList1();DECLARE_MESSAGE_MAP();CAaDlg 类实现了模拟 DVD 的主界面的功能实现。成员函数 OnBUTTOClose()实现DVD 电源的关闭功能,成员函数 OnBUTTOPlay()实现播放功能;成员函数OnBUTTONStop()实现音视频的暂停功能;成员函数 OnBUTTONForhead()实现快进功能;成员函数 O

13、nBUTTOSlow()实现快退功能;成员函数OnBUTTONVolBig()实现音量增加功能;成员函数 OnBUTTONVolSmall()实现音量减小功能等;(2)类 2:class Dlg1 : public CDialogpublic:Dlg1(CWnd* pParent = NULL); enum IDD = IDD_DIALOG1 ;CListBox m_list;CButton m_btn5;CButton m_btn4;CButton m_btn3;CButton m_btn2;CButton m_btn1;SmallPlayer smallplayer;int p;CStri

14、ngm_edit;public:virtual BOOL PreTranslateMessage(MSG* pMsg);protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV supportvirtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);protected:afx_msg void OnButton1();virtual BOOL OnInitDialog();afx_msg void OnButton3();afx_msg void OnButton2(

15、);afx_msg void OnButton5();afx_msg void OnButton4();afx_msg void OnSelchangeList1();afx_msg void OnDblclkList1();DECLARE_MESSAGE_MAP();类 Dlg1 实现把 DVD 光碟存放区域的显示,光碟在此区域存放。(3)类 3:class SmallPlayer : public CDialogpublic:SmallPlayer(CWnd* pParent = NULL); / standard constructorenum IDD = IDD_DIALOG2 ;CB

16、utton m_btn1;CButton m_btn2;CWMPPlayer4 m_ocx1;CWMPControls m_control;CWMPDVD m_dvd;CWMPPlaylist m_playlist;CWMPSettings m_set;protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV supportprotected:afx_msg void OnButton1();afx_msg void OnButton2();virtual BOOL OnInitDialog();DECLARE_M

17、ESSAGE_MAP();类 SmallPlayer 实现把 DVD 光碟的小窗口播放。2类的接口设计:(1)类 1:public:virtual BOOL PreTranslateMessage(MSG* pMsg);protected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV supportvirtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);(2)类 2:public:virtual BOOL PreTranslateMessage(MSG* pMsg);pro

18、tected:virtual void DoDataExchange(CDataExchange* pDX); / DDX/DDV supportvirtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);protected:afx_msg void OnButton1();virtual BOOL OnInitDialog();afx_msg void OnButton3();afx_msg void OnButton2();afx_msg void OnButton5();afx_msg void OnButton4();afx_msg voi

19、d OnSelchangeList1();afx_msg void OnDblclkList1();DECLARE_MESSAGE_MAP()(3)类 3:protected:afx_msg void OnButton1();afx_msg void OnButton2();virtual BOOL OnInitDialog();DECLARE_MESSAGE_MAP()说明 protected 是 windows 机制的消息函数。Windows 消息机制 Windows 系统是一个消息驱动的 OS,一个消息由一个消息名称(UINT ) ,和两个参数(WPARAM ,LPARAM) 。当用户进

20、行了输入或是窗口的状态发生改变时系统都会发送消息到某一个窗口。例如当菜单转中之后会有 WM_COMMAND 消息发送,WPARAM 的高字中(HIWORD(wParam))是命令的 ID 号,对菜单来讲就是菜单ID。当然用户也可以定义自己的消息名称,也可以利用自定义消息来发送通知和传送数据。一个消息必须由一个窗口接收。在窗口的过程(WNDPROC )中可以对消息进行分析,对自己感兴趣的消息进行处理。例如你希望对菜单选择进行处理那么你可以定义对WM_COMMAND 进行处理的代码,如果希望在窗口中进行图形输出就必须对 WM_PAINT进行处理。也相当于与用户交互的接口。3. 类之间的关系:类 C

21、AboutDlg、类 SmallPlayer 、类 Dlg1、类 CAaDlg ,都是继承自 CDialog 类。类 CAaDlg 和类 Dlg1 是包含关系,类 Dlg1 和类 SmallPlayer 也是包含关系四编写代码1问题 1(1)问题描述:点击按钮新的窗体无法弹出。(2)解决办法:新的窗体类没有加到父窗体的头文件中。且关于模态对话框与非模态对话框的显示机制不同。模态可以使用 Domal()函数实现。非模态对话框的建立需要 dlg1.Create(IDD_DIALOG1,this);即类创建显示的窗体 UI;dlg1.ShowWindow(SW_SHOW);然后显示窗体。这样才完成一个非模态对话框的建立。问题得以解决。2问题 2(1)问题描述:播放文件时,列表中选中的文件播放的是列表中其他的文件(2)解决办法:使用 m_list.SetCurSel()设置列表索引号,这样索引顺序正确,问题得到解决。五运行结果与分析1程序运行的过程:程序先执行主对话框,当用户点击代开 DVD 数据按钮程序响应 windows 消息映射,通过 windows 机制在内存中建立新的类 dlg1,此类是主窗体中包含的成员函数。CDialog 类CAaDlg 类 SmallPlayer 类 Dlg1 类

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 大学论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报