VC第4讲 对单方档的认识理论Word格式文档下载.docx
- 文档编号:19101792
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:15
- 大小:420.57KB
VC第4讲 对单方档的认识理论Word格式文档下载.docx
《VC第4讲 对单方档的认识理论Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《VC第4讲 对单方档的认识理论Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
CPro2Docinpro2Doc.handpro2Doc.cpp
View:
CPro2Viewinpro2View.handpro2View.cpp
Features:
+Initialtoolbarinmainframe
+Initialstatusbarinmainframe
+PrintingandPrintPreviewsupportinview
+3DControls
+UsessharedDLLimplementation(MFC42.DLL)
+ActiveXControlssupportenabled
+Localizabletextin:
中文[中国]
这个提示告知了工程pro2是基于Win32的单文档接口应用程序。
还告知有4个类被创建,每个类的定义分为二个部份,类的声明放在类的头文件.h中,成员函数的实现放在.cpp文件中。
4.3单文档工程的文件结构
(1)工作区文件结构
.dsw文件(DeveloperStudioWorkspace):
VC开发环境生成的工作区文件,用来把多个工程组织到一个工作区中。
点击这个文件,可以打开工作区。
(2)单文档文件结构
.dsp文件:
VC开发环境生成的工程文件(DeveloperStudioProject),用来管理一个工程的所有文件。
点击这个文件,可以打开该工程。
4.4单文档工程的视图:
(1)一个单文档工程(例如工程Pro2)的所有文件,VC++将它们以三个视图的形式呈现给用户。
这三个视图是:
ClassView,ResourceView,FileView。
分别点击这三个视图,会呈现三个不同的文件夹。
这三个文件夹分别为Pro2classes,Pro2resources,Pro2files。
(如下图)。
(2)工程pro2的类视图ClassView中含有5个类,每个类都以大写C开头,它们是CAboutDlg,CMainFram,CPro2App,CPro2Doc,CPro2View。
(3)每一个类的定义由.h头文件与.cpp组成。
类名的第一个字母大写并在开头贯以大写字母C,头文件名与执行文件名的第一个字母为小写,且不再含有大写字母C开头。
(4)双击类视图ClassView中的某个类,如双击ClassView中的类CAboutDlg,光标则指向该类CAboutDlg的定义。
4.5类CAboutDlg的定义如下:
//CAboutDlgdialogusedforAppAbout
classCAboutDlg:
publicCDialog
{
public:
CAboutDlg();
enum{IDD=IDD_ABOUTBOX};
protected:
virtualvoidDoDataExchange(CDataExchange*pDX);
//Implementation
protected:
DECLARE_MESSAGE_MAP()
};
CAboutDlg:
:
CAboutDlg():
CDialog(CAboutDlg:
IDD)
{}
voidCAboutDlg:
DoDataExchange(CDataExchange*pDX)
CDialog:
DoDataExchange(pDX);
//调用基类的函数DoDataExchange(pDX)
}
BEGIN_MESSAGE_MAP(CAboutDlg,CDialog)
END_MESSAGE_MAP()
//Appcommandtorunthedialog
voidCPro2App:
OnAppAbout()
CAboutDlgaboutDlg;
aboutDlg.DoModal();
4.6工程pro2的文件视图fileView中含有3个文件夹:
SourceFile,HeadFile,ResourceFile,每个文件夹中都含有若干文件。
4.7头文件制作
4.7.1例7.1能被4整除但不能被100整除的年,或能被400整除的年,称为闰年。
试编写判断一年份为闰年的程序。
将该程序的类的定义做成console类型应用程序中的头文件,将主程序做成.cpp文件,并运行。
(一)判断闰年的程序(例7.1):
//pro1.cpp
#include"
stdafx.h"
iostream.h"
//#include"
tdate.h"
(1)
classTdate
voidSet(intm,intd,inty);
intISleapyear();
voidPrint();
private:
intmonth;
intday;
intyear;
voidTdate:
Set(intm,intd,inty)
{month=m;
day=d;
year=y;
intTdate:
ISleapyear()
{return(year%4==0&
&
year%100!
=0||year%400==0);
Print()
{cout<
<
month<
"
/"
day<
year<
endl;
intn;
n=ISleapyear();
if(n=1)
year<
isaleapyear"
else
isnotaleapyear"
endl<
}//
(2)
intmain(intargc,char*argv[])//(3)
Tdatea;
a.Set(8,8,2008);
a.Print();
return0;
}
(二)建立一个名为pro1的console类型工程
文件\新建\工程\win32consoleApplication,填入文件名pro1,确定\一个简单程序\确定。
\保存。
(三)在工程pro1中建立一个名为tdate的空的头文件
文件\新建\文件\c++headerfile\填入文件名为tdate\确定
(四)打开头文件tdate,将
(1)——
(2)的内容贴入该文件中:
fileView\HeaderFile\tdate.h,双击\
(1)——
(2)的内容贴入该文件\保存
(五)将主程序放入Pro1cpp中
FileView\sourece\.Pro1cpp,打开\以“#include“tdate.h”“替代
(1)--
(2)部分所成的程序贴入\保存\
运行程序,则会出现结果:
4.7.2在单文档(MFCWizard.exe类型)应用程序pro2中添加全局类CTdate
(一)调通全程序例7.1(pro1.cpp):
(二)建立一个名为pro2的单文档(MFCAppWizard.exe类型)工程。
(三)在pro2的单文档(MFCAppWizard.exe类型)工程中添加全局类
ClassView,右,创建类,填写类名CTate(选择全局类),确定。
这只是在工程中创建了一个名为CTate的类的结构,这个结构被创建后,在工程的类视图文件夹ClassView中添加了类名CTate,在文件夹FileView的HeaderFile中添加了tdate.h,在SourceFile中添加了tdate.cpp文件框架。
(四)在工程pro2的头文件夹的tdate.h文件里添加类Tdate2的声明
(五)在tdate..cpp里添加类的实现语句:
(四)检验
(1)在classes中选中Tdate2,则光标自动指向头文件pro2.h中类Tdate2的声明。
(2)在classes中选中Tdate2的某个成员,则光标自动指向文件pro2.cpp中的该成员的定义。
4.7.3consoleApplication与win32Application工作的区别
consoleApplication与win32Application中只有二个文件夹类视图和文件视图。
而MFCAppWizard.exe类型的一个工程有三个文件夹类视图和文件视图。
4.7.4SDK中MessageBox()的重载
原型:
MessageBox("
内容"
"
标题”,按钮|图标);
函数重载:
MessageBox("
MFC简化了编程工作"
);
关于MFC"
MB_OKCANCEL);
MB_OKCANCEL|MB_ICONASTERISK);
voidCDlgeDlg:
OnButton1()
//TODO:
Addyourcontrolnotificationhandlercodehere
执行结果分别如下:
4.8对VC++6.0的认识
VC++6.0是本课程学习VC++的软件平台,是一个系统软件,是微软的产品。
它有四大功能模块:
1VC++语言系统
VC++语言系统主是我们在本课程中学习的语言的总和。
它对C,C++语言兼容。
2编译系统
使用VC++语言编写的程序是一种高级语言程序,VC++6.0能识别这种语言,但机器不能识别这种语言。
VC++6.0的编译系统的功能就是将这种高级语言程序编译为机器能识别的机器语言。
3SDK软件开发工具包
SDK软件开发工具包(softweerdeveloperkit)是微软早期的成果,它含有大量功能强大的函数。
如MessageBox()函数及其重载,就是SDK中的函数。
人们可以调用这些函数开发软件。
4MFC类库
将SDK中大量的函数用标准化的类进行封装,形成了类库MFC。
可以直接使用这个类为患上的类进行软件开发。
targeting:
英['
tɑ:
ɡɪtɪŋ]美['
ɡɪtɪŋ]
目标命中目标市场;
通过内容匹配;
锁定;
靶向
Initial[iˈniʃəl]adj.最初的;
开始的;
首字母的
n.首字母;
[语音学]声母;
特大的大写字母
vt.用姓名的首字母签名
PrintPreview[printˌpri:
ˈvju:
]
n.打印预览
implementation[ˌɪmplɪmen'
teɪʃn]
n.成就;
贯彻;
implement的变形;
安装启用
enabled[e'
neɪbld]adj.激活的
v.使能够,提供做…的权利[措施](enable的过去式和过去分词);
使可能
Localizable['
ləʊkəlaɪzəbl]adj.能地方化的,可以定域的
知识点:
符号
意义
优先级
!
非
高
与
中
||
或
低
1建一个工作区:
zhoulz
2在工作区zhoulz中建一MFCapplication(.exe)类型的单文本工程,工程名为firstDlg.
运行
3在资源视图resourceView中插入资源IDD_Dialoge1
resourceView,Dialoge(右),插入Dialoge
4与资源IDD_Dialoge1相关联地创建一个对话框类CDlg1
双击对话框编辑器,ok,填写对话框名CDlg1,OK,确定。
5在firstDlg..cpp文件中加头文件:
#include“Dlg1.h”
FileView,展开sourcefile,双击firstDlg..cpp,在firstDlg.之后加#include“Dlg1.h”
6在firstDlg..cpp文件中的初始化实例函数initInstance()的return语句前加语句:
CDlg1dlg1;
dlg1.DoModal();
//模式对话框函数
运行
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC第4讲 对单方档的认识理论 VC 单方 认识 理论