下载

1下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 VC++课程设计(论文模板)

VC++课程设计(论文模板).doc

VC++课程设计(论文模板)

猫儿
2012-12-11 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《VC++课程设计(论文模板)doc》,可适用于高等教育领域

HebeiUniversityofScienceandTechnologyVCSQL课程设计报告设计题目:院系:班级:学号:设计者:河北科技大学二零零九年六月河北科技大学大学理学院《VCSQL课程设计》验收及成绩评定表项目名称设计开始日期项目完成日期文档评审成绩(共分)评审项目评审内容成绩标准评审成绩项目名称课题是否从实际出发是否满足工作量需求是否具有创意等分文档格式文档格式是否规范文字是否规范图表(流程图等)是否规范术语是否准确等分文档质量程序设计思想与整体框架是否清晰等分文档特殊评价备注总成绩程序功能完备性评审成绩(共分)评审项目评审内容成绩标准评审成绩程序运行状况程序是否能正常运行是否出现死锁是否遇到错误而中止运行分程序正确性对于给定的输入数据是否能得到正确的输出结果分程序与文档的一致性程序与各种文档的内容是否一致分程序的代码量程序代码量的大小分实现方法图形界面或命令行界面美观程度分程序功能程序的功能是否完备分程序特殊评价备注总成绩答辩评审成绩(共分)评审项目评审内容成绩标准评审成绩答辩思路答辩思路是否清晰分回答问题回答问题是否正确分考勤评定成绩(共分)考勤成绩答辩总体评价总成绩河北科技大学课程设计任务书姓名:学号:院(系):专业:任务起止日期:年月日至年月日课程设计题目:问题阐述与分析:随着计算机软件、硬件技术的飞速发展,管理系统已应用于各个领域之中班级通讯录管理系统实现了由复杂、重复性手工操作向人机简便操作的转化,它运用计算机完成数据收集、修改、查询、删除以及统计等工作,提高了管理人员工作效率,避免繁重的业务量造成的人为错误,还可运用信息共享加快信息传达。该系统要求在数据库中保存学生的信息在窗体中可以逐条浏览每位学生的详细信息还可以执行查询操作(既可以按照学号查询也可以按照姓名查询)实现增加记录功能点击后弹出对话框输入学生信息并保存到数据库实现修改记录功能并且保存到数据库实现删除功能并将信息在数据库移除。添加登录框使用户名和密码与数据库中的记录相比较符合才可以登陆进入并进行操作工作量:系统分析设计对各功能模块的设计与分析。系统角色分析。以及系统的实现包括运行环境运作流程等。系统的实现部分主要设计到前台以及后台的代码编写。安全分析与设计。工作计划安排:年月日月日:进行系统分析确定各模块及具体实现方案。年月日月日:选定运行环境设计通讯录确定使用的工具VC等。年月日月日:根据前期分工与设计开始系统的实现代码编写年月日月日:各模块合并调试运行。年月日年月日:系统完善撰写报告。目录、需求分析……………………………………………………、系统结构设计………………………………………………、数据库设计…………………………………………………、应用的工具及技术…………………………………………、实现难点及解决办法难点………………………………………………………解决办法…………………………………………………、具体功能的实现登陆框……………………………………………………修改窗体的颜色…………………………………………添加音乐…………………………………………………、程序运行界面………………………………………………、总结…………………………………………………………、参考资料……………………………………………………通讯录管理系统需求分析随着计算机软件、硬件技术的飞速发展,管理系统已应用于各个领域之中班级通讯录管理系统实现了由复杂、重复性手工操作向人机简便操作的转化,它运用计算机完成数据收集、修改、查询、删除以及统计等工作,提高了管理人员工作效率,避免繁重的业务量造成的人为错误,还可运用信息共享加快信息传达。该系统要求在数据库中保存学生的信息在窗体中可以逐条浏览每位学生的详细信息还可以执行查询操作(既可以按照学号查询也可以按照姓名查询)实现增加记录功能点击后弹出对话框输入学生信息并保存到数据库实现修改记录功能并且保存到数据库实现删除功能并将信息在数据库移除。添加登录框使用户名和密码与数据库中的记录相比较符合才可以登陆进入并进行操作。系统结构设计本系统共分为三大模块分别是:登陆模块维护模块查询模块图软件层次图数据库设计以MicrosoftAcess中的表为数据库储存学生通讯信息和登陆信息表名:AddressBook字段名称中文含义数据类型宽度stunum学号文本stunam姓名文本stuage年龄数字studor宿舍文本cellnum学历文本stuadd家庭住址文本stutel联系电话文本stuqqQQ文本stuemEmail文本表学生通讯信息表表名:login字段名称中文含义数据类型宽度username用户名文本userpwd用户密码文本表登录信息表应用的工具及技术应用工具为:VisualCMicrosoftAcess应用技术:VisualCMFC数据库图片处理实现难点及解决办法难点只是掌握了c的基本语法对于MFC的函数及控件等知识了解不足。对于MFC里面的基本函数及使用方法不清楚。对于数据库的操作没有深入的了解。不知道如何操作如何连接和绑定数据库对于操作数据库的函数一无所知尤其是对于多表操作更是一窍不通只能从头一点一点的学起。对于多个对话框之间的参数传递没有很好的掌握。该系统需要对多个对话框操作我们之前对此了解不足。不会利用MSDN这一强大工具。对于英文的资料看不懂不敢接触。解决办法自主学习相关知识。在此次课程设计中我们借阅了大量书籍做参考广泛汲取我们所需要的知识很多东西都是从头学起我们还看了孙鑫老师的VC视频对于MFC中的基本的类和基本的函数及函数参数返回值等等加深了理解对于数据库的学习我们最主要的是向高年级的学长请教很快就掌握了ACESS的基本应用。定期交流。大家每周聚到一起讨论自己的心得体会和学习中的难点共同进步。有时候一个简单的问题我们苦思良久得不到解决这时候大家聚在一起谈论一下大家你一言我一语往往会在不经意间茅塞顿开。学会求助。很多问题大家讨论良久没有结果我们就会求助于网络或者其他高手最终把困难一一克服。在此过程中我加入了好几个VC经验交流群其中有一个程序员在深圳的QQ群给我帮助很大除此之外我还经常在CSDN中发帖求助收益颇多。具体功能的实现以下是我在此系统中做的主要工作共分以下几个功能:登陆框通讯录中包含很多同学们的隐私信息不是对所有人都是公开的因此应该加一个登陆限制只有拥有用户名和密码的人才可以登陆并进行相关操作。图用户名和密码均是保存在数据库中的我们在编辑框中输入的用户名和密码要和数据库中的记录相对应后才可进入主窗体。因此这就要求在主窗体弹出之前进行登录框中信息的判断。相关代码如下:BOOLCAddressBookApp::InitInstance(){AfxEnableControlContainer()CLogindlg定义登陆窗口类的一个对象if(dlgDoModal()==IDCANCEL)加入点击取消按钮returnfalse结束程序else否则即点击确定时进行输入信息和数据库中的信息的比较…………………………*注:此处还要加上头文件#include“loginh”加入用户在编辑框中输入了信息并且点击了登陆按钮就开始进行相关的判断了假如输入信息正确则会弹出提示“欢迎进入通讯录!”若密码错误则会提示“密码错误请重试!”然后退回到登陆界面继续输入信息。图图此处还需要为对话框增加一个新类命名为:CUserRecordset基于CRecordSet用于绑定数据库。具体做法就是:打开MFCClassWizard点击右边的AddClass从弹出的下拉菜单中选择New在弹出的NewClass对话框中指定CRecordSet的派生类CUserRecordset单击OK按钮弹出DatabaseOptions对话框选择数据源。这样就实现了绑定数据库。单击登陆后的相关代码如下:voidCLogin::OnOK(){TODO:AddextravalidationhereUpdateData(TRUE)CUserRecordsetmuserCUserRecordset是基于CRecordSet的一个类用于和数据库的绑定在此定义它的一个对象来对数据库操作try开始执行操作{if(muserIsOpen())记录集的打开与关闭muserClose()musermstrFilterFormat("username='s'anduserpwd='s'",musername,muserpwd)muserOpen(CRecordset::snapshot,,CRecordset::none)if(muserIsEOF())IsEOF的返回值:如果记录集中不包含记录或者程序已经滚动到最后一个记录之后则返回非零值否则返回。{muserClose()AfxMessageBox("密码错误请重试!")return}else{muserClose()AfxMessageBox("欢迎进入通讯录!")}}catch(CDBException*e)捕捉删除出现的错误操作异常处理{e>ReportError()return}CDialog::OnOK()}以上功能实现以后就可以正常编译并运行了修改窗体的颜色修改窗体的颜色这里包括修改对话框背景色编辑框的颜色静态文本的颜色。具体实现过程如下:打开ClassView选择要操作的对话框对应的类比如选择了CAddressBookView右键单击类名选择AddWindowsMessageHandlers,为其添加WMCTLCOLOR的消息映射在单击AddandEdit。在生成的函数里即可添加代码实现对话框背景色编辑框颜色和静态文本颜色的修改具体代码如下:HBRUSHCAddressBookView::OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor){HBRUSHhbr=CRecordView::OnCtlColor(pDC,pWnd,nCtlColor)TODO:ChangeanyattributesoftheDChereif(nCtlColor==CTLCOLOREDIT)更改编辑框{pDC>SetBkMode(TRANSPARENT)pDC>SetTextColor(RGB(,,))pDC>SetBkColor(RGB(,,))HBRUSHb=CreateSolidBrush(RGB(,,))returnb}elseif(nCtlColor==CTLCOLORSTATIC)更改静态文本{pDC>SetTextColor(RGB(,,))pDC>SetBkColor(RGB(,,))HBRUSHb=CreateSolidBrush(RGB(,,))returnb}elseif(nCtlColor==CTLCOLORDLG)更改对话框背景色{pDC>SetTextColor(RGB(,,))pDC>SetBkColor(RGB(,,))HBRUSHb=CreateSolidBrush(RGB(,,))returnb}TODO:Returnadifferentbrushifthedefaultisnotdesiredreturnhbr}对其他对话框的操作可以采取相同操作具体实现结果可见图那是对登陆框颜色的修改以上就是修改窗体颜色的全过程。添加音乐此项功能是在做程序时额外添加的功能可以播放预先添加的音乐(wav格式的)并且可以停止播放。这个功能调用了PlaySound函数代码如下:PlaySound("D:C课程设计ChildhoodMemorywav",,SNDFILENAME|SNDASYNC|SNDLOOP)此处需要添加头文件:#include"mmsystemh"#pragmacomment(lib,"winmmlib")停止播放的功能是把路径改为一个无音乐的路径或者把音频格式改为其他格式的点击时即可停止播放了。此功能简单而且容易实现在操作过程中欣赏点乐曲也可以减少疲劳感更显人性化。其他此外我还负责把本组其他成员的各个功能模块整合在一起使系统能够正常的使用。调整页面的布局使整体显得更加美观一些。最后还对整个的系统进行了测试对于出现问题的部分我们集体想办法解决掉程序运行界面经过最终的系统调试分析程序功能全部实现结果如下:总结通过这次课程设计我锻炼了自己的动手能力巩固了对面向对象程序设计概念的理解和MFC的运用初步掌握VC开发应用程序的基本方法学习了对数据库的基本操作能够对MicrosoftAcess的表做基本处理提高了自己综合运用所学知识的能力。记得以前我曾经感慨:学完C语言基本上什么也做不了而且还是那种单调的黑色界面……一学长给我说没事儿你学完VC后就能实现一点儿东西了。现在我虽然还不能做多大的系统至少已经摆脱了那种单调的黑色界面了。开始学习利用MSDN以前总是感觉MSDN不好用解决不了自己的问题而且还是英文的一看就头痛。在实际的编程中我遇到问题首先求助于MSDN寻找解决办法。例如:我在用IsEOF时我不太清楚它的返回值通过查询MSDN我知道了有关IsEOF返回值的如下知识:如果记录集中不包含记录或者程序已经滚动到最后一个记录之后则返回非零值否则返回。深刻认识到了基本知识的重要性。以前我在看孙鑫老师的视频讲座的时候看到他一直在讲解各个函数的定义讲每个函数是基于哪个类的讲每个函数的参数和返回值对此很不理解。直接告诉我怎么操作就行了讲那些有什么用?现在我知道了不知道函数怎么来的根本什么也做不了。除非照抄别人的代码那样也根本不可能知道功能是如何实现的。现在很有必要加强基本语法知识的学习了。提高了搜索能力。以前检索资料的能力不强资料来源很少英文资料更是不敢接触。碰到问题只有两种办法一是搜百度二是问同学。一旦得不到直截了当的答案便束手无策陷入僵局。其实现在发现我们碰到的很多问题都是很常见的共性问题在各种书籍、或者官方网站的文档当中早有解答。此次我在遇到困难时不断尝试在CSDN社区论坛发帖在MFC经验交流QQ群中求助四处借阅书籍查询相关问题的解决办法。另外我逐渐尝试阅读英文资料尝试用英语与全世界的网友交流最新的资料往往是英文的全世界的高手也总比中国的多。现在已经基本习惯于在网上查阅自己各种疑难问题的解决办法。提高了学习计算机的兴趣增强了信心。在本次课程设计中我遇到了很多的困难这些困难搞得我焦头烂额几度试图放弃但最终坚持着一一把困难克服掉了。每当克服一个困难都非常的兴奋这些都是自己努力的结果。现在我有信心面对接下来的挑战在不断的实践中锻炼自己提高自己!认识到了团队的重要性。有的问题自己苦思冥想再加上广泛的搜集资料还是很难解决这时候大家聚在一起谈论一下大家你一言我一语往往会在不经意间茅塞顿开。比如我在菜单栏里添加了一个选项建立其消息映射时默认基于MainFrm我一直在上面添加但是一直出错弄了整整一个下午后来发现是基本CNameView类的。当时我想如果我找人问一下不会浪费这么久的时间吧。参考资料孙鑫VC视频教程Visualc教程(郑阿奇主编丁有和编著机械工业出版社出版)wwwcsdnnet修改同学信息删除同学信息添加同学信息维护模块登录模块按学号查询息按姓名查询查询模块通讯录管理系统PAGEII

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/14

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利