您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > VC++课程设计报告详细
中北大学VC++实验周课程设计说明书学院:电子与计算机科学技术学院专业:软件工程题目:VC++实验设计学生姓名:贾玉亮学号0806054213成绩指导教师秦品乐2011年12月5日1.设计要求1)创建单文档,以姓名+学号命名;2)在主菜单增加菜单项:姓名;3)点击菜单“姓名”产生对话框,对话框标题为学号;4)对话框中要有一个ListControl控件用于显示,要有三个EditControl控件用于输入学号、性别、班级,有三个Button控件实现添加、删除、保存功能,保存在一个txt格式的文件中;5)建立以姓名的拼音命名的Access数据库;6)在主菜单增加菜单项:学号;7)点击菜单“学号”将数据库中所有信息显示到View中;8)文档。2.2.内容设计2.1运行环境编译工具:MicrosoftVisualStudio2010;数据库:MicrosoftAccess20032.2功能设计建立过程:新建——项目——MFC应用程序——单文档——数据库支持(ODBC数据源)——完成;实现功能:功能一:1,功能描述将输入进EditControl的姓名、性别、学号等信息通过按钮【添加】、【删除】、【保存】进行实现。并将数据保存到本地的Data.txt文档中。2,详细建立步骤在菜单栏添加”姓名”菜单,单击”姓名”弹出对话框,对话框标题是”学号:0806054213”。在资源视图中Dialog中添加新的Dialog资源,对新的Dialog添加类showitem;在窗体上增加一个ListControl控件,其view属性改为Report;增加三个StaticText控件分别为姓名、性别、班级;增加三个EditControl控件用于输入;增加三个Button控件实现相应功能:添加,删除和保存。对ListControl添加变量t_list,对三个EditControl分别添加变量t_name、t_sex、t_class;功能二:1,功能描述显示数据库中的信息到VIEW中。2、详细建立步骤在菜单栏添加菜单项“0806054213”,单击“0806054213”,弹出对话框,对话框标题是“显示数据”。通过代码将数据库的信息显示到VIEW中。2.3界面设计及相关代码图1设计页面图2添加信息图3添加信息图4添加信息图5添加数据成功实现代码:voidshowitem::OnBnClickedAdd(){//TODO:在此添加控件通知处理程序代码UpdateData(TRUE);if(t_Name.IsEmpty()||t_Sex.IsEmpty()||t_Class.IsEmpty()){MessageBox(_T(信息不完整,请填写完整后再添加条目^_^),_T(提示),MB_OK|MB_ICONWARNING);return;}intn=t_List.InsertItem(t_List.GetItemCount(),t_Name);t_List.SetItemText(n,1,t_Sex);t_List.SetItemText(n,2,t_Class);t_Name=;t_Sex=;t_Class=;UpdateData(FALSE);}图6删除信息图7删除信息实现代码:voidshowitem::OnBnClickedDelete(){//TODO:在此添加控件通知处理程序代码if(t_Index==-1){MessageBox(_T(请选择一项再删除!),_T(提示),MB_OK|MB_ICONINFORMATION);return;}t_List.DeleteItem(t_Index);t_Index=-1;}图8保存数据图9保存文档至TXT文档实现代码:voidshowitem::OnBnClickedSave(){//TODO:在此添加控件通知处理程序代码CFilefile;if(file.Open(Data.txt,CFile::modeCreate|CFile::modeWrite)){CStringstrText;strText=学号\t\t性别\t\t班级\r\n;file.Write(strText,strText.GetLength());for(inti=0;it_List.GetItemCount();i++){strText=t_List.GetItemText(i,0)+\t\t+t_List.GetItemText(i,1)+\t\t+t_List.GetItemText(i,2)+\r\n;file.Write(strText,strText.GetLength());}file.Close();MessageBox(_T(数据保存成功),_T(提示),MB_OK|MB_ICONINFORMATION);}else{MessageBox(_T(文件打开失败),_T(提示),MB_OK|MB_ICONERROR);}}图10显示数据图11显示数据实现代码:voidCjiayuliangView::OnDraw(CDC*pDC){//TODO:在此添加专用代码和/或调用基类;CjiayuliangDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);if(!isNO){CPointpText(10,0);if(m_pSet-IsBOF())return;m_pSet-MoveFirst();pDC-TextOut(pText.x+20,pText.y,_T(学号));pDC-TextOut(pText.x+98,pText.y,_T(性别));pDC-TextOut(pText.x+190,pText.y,_T(姓名));pText.y+=30;while(!m_pSet-IsEOF()){pDC-TextOut(pText.x,pText.y,CString(m_pSet-column1));pDC-TextOut(pText.x+100,pText.y,CString(m_pSet-column2));pDC-TextOut(pText.x+180,pText.y,CString(m_pSet-column3));m_pSet-MoveNext();pText.y=pText.y+30;}}}voidCjiayuliangView::On080605421332775(){//TODO:在此添加命令处理程序代码if(!isNO){isNO=TRUE;}else{isNO=FALSE;}Invalidate();}3.参考资料[1]杜茂康、李昌兵、曹慧英、王永.VisualC++.电子工业出版社.20074.课程心得在VC++这学期开课之前,我对C++语言其实没有什么了解,因为以前学过C、C#所以在做C++课程设计的时候,还是有一定帮助的。虽然以前做C#课程设计的时候也是用的Visualstudio2010,但是本次VC++主要做的是运用MFC框架来做,这是我以前没有接触过的。在上这门课之前我就通过网络信息和下载一些关于C++的相关知识。虽然网上所讲的信息很多,但却讲的非常不详细。但是听了秦老师讲的课之后,发现以前在视频里面不解的问题都迎刃而解了。秦老师开学就通过自身的实践来授课,我觉得这是非常好的,不仅可以让我们了解到了Visualstudio的使用还掌握相应的代码实现。在本次VC++课程设计之前还参加了秦老师在周六开设C++补充学习,使我受益菲浅,虽然秦老师只用了大约一大节的的时间来讲授C++,但是这一大节把编程中最重要的指针、数据、相关函数讲的条理清晰。所以在做本次课程设计的时候,所用的时间并不很多而且运用的相关函数都能够很轻易的找出来。这学期的VC++课中,记忆最深的就是秦老师第一次开课的时候出的一道题,让1到100个数相加,当时我写的是一个for循环,觉得出的题太简单了,可是当秦老师把他的答案说出来时,我才豁然开朗。在大学这4年里,我才感悟到编程最重要的并不是单纯的编程而是要注重编程的思想。
本文标题:VC++课程设计报告详细
链接地址:https://www.777doc.com/doc-4335352 .html