VC++课程设计-班级信息输入与显示_第1页
VC++课程设计-班级信息输入与显示_第2页
VC++课程设计-班级信息输入与显示_第3页
VC++课程设计-班级信息输入与显示_第4页
VC++课程设计-班级信息输入与显示_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VC++程序设计1.设计方案及功能描述:本设计为一个基于对话框的应用项目(项目名称为DW)。在主对话框中设置组合框、列表框和“添加”按钮。当按下“添加”按钮后,调用一个班级信息输入的对话框(包括班级号、班级名称、学生人数、女生人数)。班级信息输入的结果在主对话框中显示,其中班级号显示在组合框,选择组合框的班级号后,班级的其他信息显示在列表框。2.实现步骤:2.1创建并设计对话框新建一个名为DW的工程,在这个创建一个基本对话框的应用项目。单击对话框编辑器工具栏上的切换网格按钮,显示对话框网格。(1)选择“File”→“New”菜单命令,在弹出的“New”对话框中,“Project”标签页面中显示了一系列的应用程序项目类型;选择MFCAppWizard(exe)的项目类型,将项目工作文件夹定位在“C:\USERS\ADMINISTRATOR\DESKTOP\VC++\DW”,并在“Projectname”编辑框中输入项目名DW,如图1所示。图1新建工程(2)单击“确定”按钮,出现如图2所示的对话框。并在类型选择栏选择选择“基本对话框”图2选择所创建的应用程序的类型(3)单击“下一步”按钮,出现如图3所示的对话框在“对话框的标题是”一栏输入“班级信息输入”。图3输入对话框的标题完成上述步骤后,可以单击完成按钮,或者一直点击下一步直至完成基本设置。并出现下图所示的提示界面。图4完成基本设置后的提示信息单击确定按钮,进入如下界面:图5主对话框2.2控件选择及设置(1)打开对话框网格,参见图6的控件布局,用编辑器为主对话框添加如下图所示的一些控件。图6主对话框的控件布局(2)将鼠标到左边框的IDD_DW_DIALOG处并单击右键,在下拉菜单中选择插入dialog选项系统弹出如下图所示的子对话框。图7子对话框(3)打开对话框网格,参见图8的控件布局,用编辑器为对话框添加如下图所示的一些控件。图8子对话框的控件布局(4)更改各控件的ID和名称,并添加相关属性。如下列各图所示:(5)打开ClassWizard的MemberVariable页面,或者直接按Ctrl+W组合键,在Classname中选择XMDialog,选中所需的控件号,双击或者单击AddVariaable按钮。依次为下列控件添加成员变量,如图8所。图8为主对话框的控件添加成员变量同样的,为子对话框的控件添加成员变量如图9所示。图9为子对话框的控件添加成员变量(6)用MFCClassWizard为DWDialog类添加WM_INITDIALOG消息映射,并添加下列初始化代码:BOOLCDWDlg::OnInitDialog(){ CDialog::OnInitDialog(); //Add"About..."menuitemtosystemmenu. //IDM_ABOUTBOXmustbeinthesystemcommandrange. ASSERT((IDM_ABOUTBOX&0xFFF0)==IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX<0xF000); CMenu*pSysMenu=GetSystemMenu(FALSE); if(pSysMenu!=NULL) { CStringstrAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if(!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING,IDM_ABOUTBOX,strAboutMenu); } } //Settheiconforthisdialog.Theframeworkdoesthisautomatically //whentheapplication'smainwindowisnotadialog SetIcon(m_hIcon,TRUE); //Setbigicon SetIcon(m_hIcon,FALSE); //Setsmallicon //TODO:Addextrainitializationhere returnTRUE;//returnTRUEunlessyousetthefocustoacontrol}图10为DWDialog类添加WM_INITDIALOG消息映射(7)在文件DWDlg.cpp的前面添加DWDialog的包含语句:#include"DWDlg.h"#include"add.h"(8)用MFCClassWizard为CDWDlg增加IDC_Combo1控件的CBN_EDITCHANGE消息映射,并添加下列代码:voidCDWDlg::OnSelchangeCombo1(){intindex=m_classnb.GetCurSel(); CStringinfor=*(CString*)m_classnb.GetItemDataPtr(index); m_classmessage.ResetContent(); m_classmessage.AddString(infor); }(9)用MFCClassWizard为CDWDlg增加IDOK控件的BN_CLICKED消息映射,并添加下列代码:voidCDWDlg::OnOK(){ adda; if(a.DoModal()==IDOK) { CStringid="";CStringinfor=""; FILE*f=fopen("recordinfor.txt","r"); FILE*fp=fopen("recordid.txt","r"); while(!feof(f)) {infor+=fgetc(f);} while(!feof(fp)) {id+=fgetc(fp);} fclose(f); fclose(fp); intindex; index=m_classnb.AddString(id); m_classnb.SetItemDataPtr(index,newCString(infor)); } UpdateData(true); //CDialog::OnOK();}(10)用MFCClassWizard为add增加IDOK控件的BN_CLICKED消息映射,并添加下列代码:voidadd::OnOK(){ UpdateData(true); CStringinfor=""; CStringid=""; id=m_classnumber; infor+="班级名称:"; infor+=m_classname; infor+="\r\n"; infor+="女生人数:"; infor+=m_gnumber; infor+="\r\n"; infor+="班级人数:"; infor+=m_snumber;CDialog::OnOK(); FILE*f=fopen("recordinfor.txt","w+"); for(inti=0;i<strlen(infor);i++) fputc(infor[i],f); fclose(f); FILE*fp=fopen("recordid.txt","w+"); for(i=0;i<strlen(id);i++) fputc(id[i],fp); fclose(fp); MessageBox("恭喜添加成功!"); CDialog::OnOK();}3.调试和运行调试成功后的结果如下图所示,单击添加按钮,就会弹出子对话框,在子对话框中输入班级信息。图11编译运行结果图12输入班级信息在输入完一组数据后单击确定,会弹出小窗口提示添加成功。图13提示框口所有班级信息添加完之后,单击主对话框班级号栏的组合框会显示所有以输入信息班级的班级号,选择02号班级,主对话框的列表框就会显示该班级的全部信息。图14列表框显示选中班级的信息心得体会VC++课程设计的尘嚣渐渐远去,怀着对这次设计的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,通过这次课程设计积累的信心与斗志,心里感慨万千。现在回顾两个星期以前,当一个星期前的现在,当看到老师布置给我们的这些题目时,我们都蒙了,这么难的题目我们怎么可能会编出来啊,可是埋怨是没有用的,我们只能尽我们自己最大的努力把程序给写出来,虽然知道这一路肯定是异常的艰苦,但豁出去了。上网查资料是我们迈开的第一步,看是否有类似的题目,可是泡了几个小时的网吧还是没有,我们失望而回.但是恍然一想,找学姐,学长们传授点经验啊,但是最终还是空手而归.我们真的有点绝望了,但是由于我们此刻有着年轻人的激情,冲动,火力,想了一想,求天求地求人不如求自己,所以我们决定大家在一起共同努力,分配任务去图书馆查找资料.肯定没有现成的,我们只能查相关的函数,经过两三天的努力,我们把框架弄出来了,可是还有计算和闪烁这两大难题摆在我们面前,真的是个难题,自从把框架弄好了以后就没有进展了,眼看几天都快过了,我们那个急啊,可是急也没有用。我们相信我们几个人总归可以搞定,这是我们可以坚持到现在的信念.后来我们不停地总结过去走过的弯路,回想上课时老师怎么教我们构建一个程序,要想构建一个程序,必须要有一个完整的想法,算法,大概的脑海路径,才能完整地创建一个程序.经过一个星期的学习,使我对VC语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对VC语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对VC语言中经常出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。

与其临渊羡鱼,不如退而结网。这次课程设计给我的最大的印象就是如果自己有了兴趣

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论