《C++程序设计课程设计模板.doc》由会员分享,可在线阅读,更多相关《C++程序设计课程设计模板.doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、安 徽 新 华 学 院C/C+程序设计课程设计院 系: 信息工程学院 年级专业: 12计科一班 小组名称: 语言使者 指导教 完成时间: 2013 年5月 21 日信息工程学院院 信息与计算科学系计算机导论课程设计任务及成绩院(系):信息工程学院 教研室:软件教研室角色成员姓名承担分工任务组员组长:吴文涛齐秀清 黄家宝 沙先婷 吴文涛 丁伟龙齐秀清:第一题,第五题黄家宝:第十题,第八题吴文涛:第二题,第四题丁伟龙:第三题,第七题沙先婷:第六题,第九题课 程 设 计 任 务项目一、。项目二、。成绩成绩: 指导教师签字: 年 月 日一、课程设计目的1、了解面向对象程序设计特点;2、了解MFC的功能
2、及应用;3、能用MFC进行可视化程序设计;二、课程设计任务1、项目主要功能说明;2、工程中主要类结构描述; 3、工程中主要功能函数说明;4、项目运行画面;项目一:设计一个滚动字母1、项目主要功能说明 本项目主要完成计算器的设计与实现,项目包括两部分:画面的设计和功能的设计。画面设计包括:1)按钮的设计;2)文本框的设计。功能设计包括:完成实型数字的加、减、乘、除等。2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CNameViewOnDrawOnLButtonDown()基类CView1.1类结构示意图1)基类说明:MFC提供基类CView,该类为文本框类,该类中有多个成员函
3、数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnLButtonDown ()等。3、工程中主要功能函数说明OnLButtonDown ()函数为单击鼠标左键时的动作事件。4、项目运行画面 项目二:计算器1、项目主要功能说明 本项目主要完成计算器的设计与实现,项目包括两部分:画面的设计和功能的设计。画面设计包括:1)按钮的设计;2)文本框的设计。功能设计包括:完成实型数字的加、减、乘、除等。2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CName
4、ViewCMfc_calDlgOnDrawCDialogOnLButtonDown()OnButton1()OnButton1()OnButton1()OnButton1()OnInitDialog()基类CView2.1类结构示意图1)基类说明:MFC提供基类CView,该类为文本框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnLButtonDown()、OnButton1()、OnButton1()、OnButton1()、OnButt
5、on1()、OnInitDialog()等。3、工程中主要功能函数说明OnLButtonDown ()函数为单击鼠标左键时的动作事件。OnButton1()函数为求和的动作事件OnButton1()函数为求差的动作事件OnButton1()函数为求积的动作事件OnButton1()函数为求商的动作事件4项目运行画面项目运行成功的面画如图2.2所示: 项目三:画笔1、项目主要功能说明本项目主要完成画图的功能。2、工程中主要类结构描述工程设计中的类结构如图1.3所示 派生类OnLButtonDownOnLButtonUpOnMouseMove,基类CGhView()1)基类说明:MFC提供基类CG
6、hView,该类为文本框类,该类中有多个成员函数完成不同功能基类已经提供的成员函数至少有:OnLButtonDown,OnLButtonUp,OnMouseMove。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnLButtonDown。3、工程中主要功能函数说明OnLButtonDown:该成员函数由框架调用,让您的应用程序处理一个Windows消息。参数传递给函数时,反映收到的消息框架收到的参数。如果调用此函数的基类的实现,该实现将使用原来的消息,而不是您提供的参数传递给函数的参数。OnLButtonUp:这个是得到松开鼠标时的坐标,并完成画从起点到此点的一条线你用window里
7、的画笔画一根线操作一下就会有感性认识OnMouseMove: 每当用户把鼠标移动一个像素,就会发生一个 mousemove 事件4:项目运行画面 项目运行成功的画面如图1.3所示项目四:显示硬盘信息1、项目主要功能说明 查看磁盘详细信息,CDialogCMfc_87Dlg基类CGhView()2工程中主要类结构描述3、工程中主要功能函数说明基类说明MFC提供基类CDialog,该类为文本框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。派生类说明CMfc_87Dlg继承了CDialog项目五:获取和
8、修改计算机NetBIOS名称1、项目主要功能说明 本项目主要完成获取和修改计算机NetBIOS名称。2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CNameViewOnOKSetComputerName ()基类CView1.1类结构示意图1)基类说明:OnOK:当用户按OK按钮(ID是IDOK)时调用。覆盖该函数执行OK按钮动作。如果对话框包括自动数据检验和交换,缺省方式是对应用的某些变量进行数据的检验和更新 2)派生类说明:设置计算机名,系统下次启动时将使用该名称:SetComputerName :3、工程中主要功能函数说明SetComputerName :设置计算机名
9、,系统下次启动时将使用该名称4、项目运行画面 项目运行成功的面画如图所示: 项目六:MFC关机、重起、切换用户程序1;项目主要功能说明:设计实现一个可视化的关机、重起、切换用户程序,主要对话框等构成,可以直接通过可视化的按钮和对话框与用户进行交互,实现关机、重起、切换用户的功能。2;工程中主要类描述二、功能结构设计(对话框) Class View里的三个类的简单说明:l class CMyDlg : public CDialog类CDialog是在屏幕上显示的对话框基类。对话框有两类:模态对话框和非模态对话框。模态对话框在应用继续进行之前必须关闭。非模态对话框允许用户执行另外的操作而不必取消或
10、删除该对话框。可覆盖的函数 OnInitDialog 覆盖该函数可改变对话框初始设置。OnOK 覆盖该函数可在对话框中进行OK按钮操作。缺省值是关闭对话框,DoModal返回IDOK 。OnCancel 覆盖该函数可在对话框中进行Cancel按钮操作或按ESC键。缺省值是关闭对话框,DoModal返回IDCANCEL。另,在派生类CMyDlg和CAboutDlg中都有函数DoDataExchange(),其是用来在里面添加控件或者控件属性对应的成员变量的,在执行UpdateData()时系统会自动调用。调用它来初始化对话框的控件或更新数据。定义一个ComboBox变量: m_Combocomp
11、uter;然后就可以在对应的对话框的DoDataExchange函数中这样写到DDX_Control(pDX,IDC_BUTTON1, m_Combocomputer),以后对m_Combocomputer的操作就会显现在对话框的那个button上了,实现了数据交换的功能。l class CAboutDlg : public CDialog类CAboutDlg是对话框类,它是由MFC类库中的CDialog类派生而来的。l class CMyApp : public CWinApp类CMyApp是应用程序类,它的基类是CWinApp。每个基于MFC的应用程序都必须有一个从CWinApp类派生的对
12、象。OK()Cancel()OnInitDialog()-派生类CAboutDlg基类CDialog- 函数 virtual BOOL OnInitDialog();virtual void OnOK();成员 virtual void OnCancel();派生类CMyDlg数据 CComboBox m_Combocomputer;成员 int m_num;1. 基类说明:MFC提供基类CDialog,该类为对话框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数,初始化函数等;虚函数至少有Ok(),Cancel(),OnInit
13、Dialog()等实现多态性。2.派生类说明:在派生类中:1) 添加数据成员:ComboBox类的对象m_Combocomputer和画面的组合框对应。Int 型m_num的变量和编辑框对应。2)函数:OnOK(),OnInitDialog()等。3.相关成员函数功能说明:1) 函数OnInitDialog()是布尔类型的虚函数,负责组合框,是在CMyDlg类中添加的组合框,则在CMyDlg类中的OnInitDialog()函数添加初始化值,组合框被定义了一个ComboBox类的对象m_Combocomputer,通过该对象的AddString()的函数可以添加初始值,如,m_Combocom
14、puter.AddString(change user);m_Combocomputer.AddString(restart);m_Combocomputer.AddString(Shutdown)这些添加的在组合框的下拉框中是按字母顺序排列的。2)OnOK()函数的修改,不是调用基类的CDialog:OnOK()的函数,通过对象m_Combocomputer的GetCurSel()函数返回组合框中列表框中当前选中的项的下标,用switch语句来匹配当前的下标而执行相应的操作。关于GetCurSel()的一点说明,是返回组合框中列表框中当前选中的项的下标,没选的时候是-1,是从0开始编号的。4
15、.引用函数说明:1) UpdateData(true)画面数据读入到后台处理函数中。2) UpdateData(false)把后台处理函数中的数据输出到画。3) ExitWindowsEx (EWX_REBOOT,0);重启4) ExitWindowsEx (EWX_SHUTDOWN,0);关机5) ExitWindowsEx(EWX_LOGOFF,0); 切换用户6) ExitWindowsEx(EWX_FORCE+EWX_SHUTDOWN,0);强制关机4、项目运行画面 项目运行成功的面画如图所示: 项目七:视图文本与对话框1、项目主要功能说明本项目主要完成 视图文本与对话框 (点击视图文
16、中的Show选项,目的是为了把对话框中内容添加到视图文本中)2、工程中主要类结构描述 工程设计中的类结构如图7.1所示:派生类CNameViewCMyDlgCMfc_TextDlgViewOnDrawCDialogOnShow()OnDraw( )基类CView7.1类结构示意图1)基类说明:MFC提供基类CView,该类为文本框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnLButtonDown ()、OnShow()、OnDraw( )
17、等。3、工程中主要功能函数说明OnShow()函数为点击视图文中的Show选项的动作事件。OnDraw( )函数为把对话框中内容添加到视图文本中的动作事件4、项目运行画面 项目运行成功的面画如图7.2所示: 项目八 设计一个鼠标定时提示1、项目主要功能说明 本项目主要完成设计鼠标定时提示,项目包括功能的设计,建立一个单文 本框工程,在视图类中添加WM_TIMER消息和添加鼠标移动WM_MOUSEMOVE消息并对应相应的函数,还要添加数据成员:CPoint MousePoint。2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CNameViewOnMouseMoveOnTime
18、rInvalidate()KillTimer(1)GetDocument()基类CPro_8View1.1类结构示意图1)基类说明:MFC提供基类,onmousemove 事件会在鼠标指针移动时发生,每当用户把鼠标移动一个像素,就会发生一个 mousemove 事件。这会耗费系统资源去处理所有这些 mousemove 事件。OnTimer()函数用于实现定时控制功能,定时控制功能主要由下面三个函数共同实现:SetTimer, KillTimer()和OnTimer().2)派生类说明:在派生类中添加设计时所需事件函数,如:Invalidate()KillTimer(1)GetDocument(
19、)。3、工程中主要功能函数说明Invalidate()该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘KillTimer(1)KillTimer:移除定时器函数的声明:移除先前用SetTimer设置的定时器。在定时器使用完毕后移除定时器时使用。GetDocument()用于获得程序当前有效的文档4、项目运行画面 项目运行成功的面画如图所示:项目九: 在视图中显示Html网页项目主要功能说明 本项目主要完成在视图中显示Html网页。2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CNameViewCMfc_HtmlViewOnDrawCHtmlViewOnGo
20、Back()OnInitialUpdate()基类CView9.1类结构示意图1)基类说明:MFC提供基类CView,该类为文本框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnGoBack()、OnInitialUpdate()等。3、工程中主要功能函数说明OnGoBack()函数为执行后退的动作事件。OnInitialUpdate()函数为连接到网址的动作事件4、项目运行画面:项目十:不同区域显示不同鼠标图片1、项目主要功能说明 本项目主
21、要完成,移动鼠标至不同区域实现鼠标形状变化2、工程中主要类结构描述 工程设计中的类结构如图1.1所示:派生类CMfc_MouseSViewOnDrawLoadCursorIDCapPointOnMouseMove基类CView1.1类结构示意图1)基类说明:MFC提供基类CView,该类为文本框类,该类中有多个成员函数完成不同功能。从派生类运行时的画面可以推断出,基类已经提供的成员函数至少有:画面控制函数OnDraw(),初始化函数等。2)派生类说明:在派生类中添加设计时所需事件函数,如:OnMouseMove等。3、工程中主要功能函数说明OnMouseMove函数为移动鼠标至不同区域时的动作事件。LoadCursorID函数为导入鼠标形状图标的事件。CapPoint函数为控制鼠标,在不同区域变换图标的动作事件。4、项目运行画面