vc考核报告初稿.docx

上传人:b****2 文档编号:17118974 上传时间:2023-07-22 格式:DOCX 页数:12 大小:390.72KB
下载 相关 举报
vc考核报告初稿.docx_第1页
第1页 / 共12页
vc考核报告初稿.docx_第2页
第2页 / 共12页
vc考核报告初稿.docx_第3页
第3页 / 共12页
vc考核报告初稿.docx_第4页
第4页 / 共12页
vc考核报告初稿.docx_第5页
第5页 / 共12页
vc考核报告初稿.docx_第6页
第6页 / 共12页
vc考核报告初稿.docx_第7页
第7页 / 共12页
vc考核报告初稿.docx_第8页
第8页 / 共12页
vc考核报告初稿.docx_第9页
第9页 / 共12页
vc考核报告初稿.docx_第10页
第10页 / 共12页
vc考核报告初稿.docx_第11页
第11页 / 共12页
vc考核报告初稿.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

vc考核报告初稿.docx

《vc考核报告初稿.docx》由会员分享,可在线阅读,更多相关《vc考核报告初稿.docx(12页珍藏版)》请在冰点文库上搜索。

vc考核报告初稿.docx

vc考核报告初稿

目录

一.设计方案及功能描述1

二.实现步骤及主要程序代码1

1.添加并设计对话框1

2.完善Cqyjdlg类代码4

3.调用对话框7

三.运行结果9

四.总结及心得10

 

一.设计方案及功能描述

本次作业要求设计一个商店日营业额输入(内容包括文字和数字)

1.建立一个单文档的应用项目(项目名称为学生姓名拼音首字母缩写)。

2.在该应用项目下,建立一个对话框进行商店日营业额输入,并更改对话框的标题。

输入内容可以是商店名称、编号、4种商品的日营业额等。

3.在对话框中要求采用编辑框、滚动条、滑动条等进行选择,其中一种商品日营业额采用编辑框,二种商品日营业额采用滚动条,一种商品日营业额采用滑动条进行输入。

4.在应用项目主框架的菜单上设置一个菜单调用该对话框。

5.在工具栏设置一个工具按钮,点击该工具按钮也可调用该对话框。

6.将对话框的输入结果显示出来。

二.实现步骤及主要程序代码

1.添加并设计对话框

(1)启动VisualC++6.0

(2)用MFCAppWizard(exe)创建一个基于对话框的单文档应用程序qyjqyj,如图2-1

图2-1(a)

图2-1(b)

(3)在ResourceView界面,右击Dialog添加一个新的对话框资源。

右键对话框,在属性界面将ID号改为IDD_DIALOG1,标题为“商店日营业额输入”,将对话框字体改为“仿宋,10号”,如图2-2

图2-2

(4)双击对话框资源,在MFCClassWizard中为是对话框创建一个新类Cqyjdlg,如图2-3

图2-3

(5)利用控件工具栏向对话框添加如下控件,调整控件的位置,如图2-4所示

图2-4

编辑框及滑动条的属性如表2-1

添加的控件

ID号

标题

其他属性

商店名编辑框

IDC_EDIT_NAME

——

默认

商店编号编辑框

IDC_EDIT_NO

——

默认

五花肉编辑框

IDC_EDIT_Goods1

——

默认

糖醋排骨编辑框

IDC_EDIT_Goods2

——

默认

可乐鸡翅编辑框

IDC_EDIT_Goods3

——

默认

水晶猪蹄编辑框

IDC_EDIT_Goods4

——

默认

水平滚动条1

IDC_SCROLLBAR1

——

默认

水平滚动条2

IDC_SCROLLBAR2

——

默认

滑动条

IDC_SLIDER

——

默认

表2-1

2.完善Cqyjdlg类代码

(1)打开ClassWizard的MemberVariables页面,查看Classname是否是Cqyjdlg,选中所需的控件ID号,双击鼠标,依次为下列控件增加成员变量,如图2-5

图2-5

(2)打开MFCClassWizard,在MessageMaps页面中,为Cqyjdlg添加WM_INITDIALOG的消息映射,取默认的映射名称,如图2-6

图2-6

并添加下列代码:

BOOLCqyjdlg:

:

OnInitDialog()

{

//TODO:

Addextrainitializationhere

CDialog:

:

OnInitDialog();

m_scroll1.SetScrollRange(0,10);//设置滚动条控件范围

m_scroll2.SetScrollRange(0,20);

m_slider.SetRange(0,100);//设置滚动条控件范围

m_slider.SetTicFreq

(1);

returnTRUE;//returnTRUEunlessyousetthefocustoacontrol

//EXCEPTION:

OCXPropertyPagesshouldreturnFALSE

}

(3)同样在MFCClassWizard的MessageMaps页面中,为Cqyjdlg增加WM_HSCROLL的消息映射,并添加下列代码:

voidCqyjdlg:

:

OnHScroll(UINTnSBCode,UINTnPos,CScrollBar*pScrollBar)

{intnID=pScrollBar->GetDlgCtrlID();//获取对话框中控件ID号

if(nID==IDC_SCROLLBAR1)//或是滚动条1的水平滚动消息

{switch(nSBCode)

{caseSB_LINELEFT:

m_nGoods2--;break;//单击滚动条左边箭头

caseSB_LINERIGHT:

m_nGoods2++;break;//单击滚动条左边箭头

caseSB_PAGELEFT:

m_nGoods2-=10;break;

caseSB_PAGERIGHT:

m_nGoods2+=10;break;

caseSB_THUMBTRACK:

m_nGoods2=nPos;break;

}

}

if(m_nGoods2<0)m_nGoods2=0;

if(m_nGoods2>100)m_nGoods2=100;

m_scroll1.SetScrollPos(m_nGoods2);

if(nID==IDC_SCROLLBAR2)//或是滚动条2的水平滚动消息

{switch(nSBCode)

{caseSB_LINELEFT:

m_nGoods3--;break;//单击滚动条左边箭头

caseSB_LINERIGHT:

m_nGoods3++;break;//单击滚动条左边箭头

caseSB_PAGELEFT:

m_nGoods3-=10;break;

caseSB_PAGERIGHT:

m_nGoods3+=10;break;

caseSB_THUMBTRACK:

m_nGoods3=nPos;break;

}

}

if(m_nGoods3<0)m_nGoods3=0;

if(m_nGoods3>100)m_nGoods3=100;

m_scroll2.SetScrollPos(m_nGoods3);

if(nID==IDC_SLIDER1)//或是滑动条的水平滚动消息

{switch(nSBCode)

{caseSB_LINELEFT:

m_nGoods4--;break;

caseSB_LINERIGHT:

m_nGoods4++;break;

caseSB_PAGELEFT:

m_nGoods4-=10;break;

caseSB_PAGERIGHT:

m_nGoods4+=10;break;

caseSB_THUMBTRACK:

m_nGoods4=nPos;break;

}

}

if(m_nGoods4<0)m_nGoods4=0;

if(m_nGoods4>100)m_nGoods4=100;

m_slider.SetPos(m_nGoods4);

UpdateData(FALSE);//将变量内容显示在控件中

Invalidate();//是对话框无效,强迫系统重绘对话框

//TODO:

Addyourmessagehandlercodehereand/orcalldefault

CDialog:

:

OnHScroll(nSBCode,nPos,pScrollBar);

}

(4)为控件ID_OK添加映射函数,并添加下列代码

voidCqyjdlg:

:

OnOK()

{CStringstr,strctrl;

str="商店名称:

";

GetDlgItemText(IDC_EDIT_NAME,strctrl);

str=str+strctrl;

str=str+"\n商店编号:

";

GetDlgItemText(IDC_EDIT_NO,strctrl);

str=str+strctrl;

str=str+"\n五花肉营业额:

";

GetDlgItemText(IDC_EDIT_Goods1,strctrl);

str=str+strctrl;

str=str+"\n糖醋排骨营业额:

";

GetDlgItemText(IDC_EDIT_Goods2,strctrl);

str=str+strctrl;

str=str+"\n可乐鸡翅营业额:

";

GetDlgItemText(IDC_EDIT_Goods3,strctrl);

str=str+strctrl;

str=str+"\n水晶猪蹄营业额:

";

GetDlgItemText(IDC_EDIT_Goods4,strctrl);

str=str+strctrl;

MessageBox(str,"营业额");

//TODO:

Addextravalidationhere

CDialog:

:

OnOK();

}

3.调用对话框

(1)在菜单栏中新加一个菜单项“对话框”用来调用对话框,其ID号为IDD_DIALOG1,使得当在菜单栏中点击对话框,即显示新建的对话框。

同样在工具栏中增加一个图标,将其ID号改为IDD_DIALOG1,使得在工具栏中点击设计的图标,也可显示调用的对话框。

如图2-7

图2-7

(2)在MFCClassWizard的MessageMaps页面Classname列表框中选择CMainFrame,在IDs列表中选择ID_DIALOG1,在Messages框中找到并选择COMMAND,添加映射函数代码如下:

voidCMainFrame:

:

OnDialog1()

{CCqyjdlgdlg;

if(IDOK==dlg.DoModal())

{

//获取对话框数据

CStringstr;

str.Format("%s,%s,%4.1f,%d,%d,%d",

dlg.m_strName,

dlg.m_strNO,

dlg.m_fGoods1,

dlg.m_nGoods2,

dlg.m_nGoods3,

dlg.m_nGoods4);

AfxMessageBox(str);

}

//TODO:

Addyourcommandhandlercodehere

}

(3)在文件MainFrm.cpp的前面添加Cqyjdlg类的头文件包含语句:

#include"stdafx.h"

#include"qyj.h"

#include"MainFrm.h"

#include"Cqyjdlg.h"

(4)编译运行并测试

3.运行结果

程序编译运行后单击菜单“对话框”或工具栏中“

”,即可弹出设计的对话框,对对话框进行编辑,单击确定,弹出输入信息窗口,如图3-1所示

图3-1

 

4.总结及心得

通过此次课程设计,使我更加扎实的掌握了有关VC++方面的知识,在设计过程中,虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。

实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。

VC++诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。

同时,设计让我感触很深。

使我对抽象的理论有了具体的认识。

通过这次课程设计,我掌握了常用控件的用法,如单选框,复选框,编辑框,旋转按钮的添加。

学会了用菜单调用对话框和工具栏调用对话框的方法,并初步学会了VC++的一些简单的编程。

我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。

更重要的是,在实验课上,我们学会了很多学习的方法。

而这是日后最实用的,真的是受益匪浅。

要面对社会的挑战,只有不断的学习、实践,再学习、再实践。

这对于我们的将来也有很大的帮助。

以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。

就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。

回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2