admin 管理员组

文章数量: 1086019


2024年3月27日发(作者:html网页设计代码大全b)

C++MFC快速超简单入门学习

注意:红色字体为重要的信息,必须理解并记住。

在学习

MFC

之前,你必须对

C++

的“类和对象有一定的认识和理

解,因为

MFC

就是

C++

完全的面向对象设计,它里面封装了好多类,

我们只要调用就

OK

,就像

C

语言调用库函数一样,直接使用,这就

C++

第一特性:封装性,第二性就是继承与派生,

这个在

MFC

中体现得淋淋至间(字打错了)。如果不懂,我再来解

释一下,例:有一个商品类,

classGOODS

商品属性有名字,价

它可作为一个基类,我可以派上出苹果类,

classApple:public

GOODS.

苹果属性出了继承了商品的属性名字,价格之外,还可派

生出,颜色,等属性,继承与派生就是一个是另一个的子集,但是这

个子集不仅包括父集的特征,还具有一些新的特性,懂了吧,这样。

MFC

其中重要的类是:

CDialog

对话框类,

CEdit,(

编辑框

)CButton,

(按钮类)

CRadio

(单选钮类)

,

这些都是作为基类,

由我们自己定义的类去派生它们。

好了,现在先了解一下什么是

MFC

吧,请看当前目录下的

MFC

入门知识的幻

灯片

1

20

张,或大概的浏览一下当前目录下的其它连个

word

文件,后面的幻

灯片我觉得没必要看了,因为是快速吗,节约时间,(首先看不懂没关系,)但

但看完之后,必须掌握如下知识:

是作什么用的?与以前我们写的

C

C++

语言有什

么不同。以及它的一些优点,

不同,以前的是控制台的界面不好看,不友好,操作不

方便,黑框框的一片。

MFC

反之。

优点:可用极少的代码实现强大的功能,

2.

关于

MFC

的一些术语,概念啊

3.

你要知道

MFC

的对话框是由控件组成的,具有

哪些控件(例按钮

:Button,

单选钮

:radio,Edit

例:要知道

MFC

的编程的原则,也就是宗旨理念

吧,“消息映射,事件驱动“,这句话要记住并理

解,很重要,真的。那到底是什么意思呢?

现实举例:一个人具备一种“感知“的能力,(也

可称消息吧),当用火接近这个人时(发生的事件),

就会(驱动)这个人做出反应,远离”火“,

MFC

举例:一个按钮有什么消息啊,我可以单

击它,所以它具备单击的消息:

第一个就是左键单击的消息,第二个

就是双击的消息,见名思议就

OK

了。我单击这个按钮要产生某个事件,

我就可以第一步,先给按钮添加一个消息响应函

数,意思就是当我单击按钮时,就调用那个函数,

按钮时时刻刻都处于待命的状态,

假如添加的函数如下:

voidCDsDlg::OnButton1()

{

AfxMessageBox(“

我单击了这个按钮

”);

//

这个函数要记住,就是弹出一个消息框

.

其中的字

//

符串自己设置。

}

当用户单击了这个按钮时,就会调用上述函数,弹

出一个消息框显示“我单击了这个按钮”好了,接

下来就看其它控件的消息吧!

接下来的就用实例傻瓜式的教大家怎样创建

MFC

程序吧,

第五章对话框和常用控件

对话框是

Windows

应用程序中最重要的用户界面元素之一,是与用户交互

的重要手段,在程序运行过程中,对话框可用于扑捉用户的输入信息或数据。对

话框是一个特殊类型的窗口,任何对窗口进行的操作(如:移动、最大化、最小

化等)都可在对话框中实施,一般来说,在对话框中通过各种控件(如:按钮、

编辑框、列表框、组合框等)来和用户进行交互。控件是在系统内部定义的用于

和用户交互的基本单元。

一、对话框的使用

VisualC++

提供的对话框编辑器能“可视”地进行设计、编辑,并可用

ClassWizard

为对话框从

CDialog

基类中派生一个类,

MFC

CDialog

类封装了

用于对话框的显示、关闭等操作的许多功能函数,例如:

DoModal

函数用来显示

模式对话框并返回用户操作的结果。这个函数先记住吧,会有用的。

例:

CDialogd1;//

因为

CDialog(

对话框类

)

MFC

已经封装的一个类,就是相

当于一个库函数的差不多,库函数晓得吧,例

C

语言的,

printf();

这个也是库函

数,是输出函数,而这里用类来表示罢了,反正语句就是定义一个

对话框的对象

d1;

然后我用这个对象就可以直接调用

CDialog

中得成员函数或成

员变量了,(记住定义了某个

MFC

的封装类的对象后就可以直接使用这个类的

函数和成员变量了,)

例:

l();//

就是调用对话框类

CDialog

的成员函数

DoModal();

打开一

个对话框。

那么如何建立对话框?接下来你要跟着一步一步的去做,

只有实践才能检验真理!!!!才能学会,学懂!!

第一步:单击”

单击确定

文件----新建选择”工程”的下面红色选项.填好工程名,

:

第二步:选择红色区域.直接单击”完成”按钮.

第三步;出现如下图界面,

第四步:删除上图中的默认控件(控件是什么?例:按钮,

,单选钮等这些都是“控件”。

,静态文本框

操作:先选择需要删除的按钮,然后按键盘上得“delete”键就可以删除。

注意了:当你新建完工程之后,左边会有个这样的窗口:

这叫工作区间:这里有三种视图,

Class

叫类视图,就是系统自动会生成一些类,然后你可以单击这个

按钮之后,快速找到某个类,例:

自动生成了三个类,一个全局变量(

这只有一个类:

系统

),最常用到的是

接下来你可以单击上图的

加号展开这个类。下面的就是

这个类的成员函数和成员变量(绿色),你可以双击它们,然后在右

边的窗口就可以看到这个成员函数的地方了,这个方法要记住,方便

以后查找某个函数在哪里。

是对话框(CDialg)类的派生类,命名的规则“C+“你

自己写的工程名”+Dlg。最常用到的函数是这个,你

现在双击它,然后在右边窗口就可以看到这个函数的实现了,这个函

数的意义在于,初始化一些数据。

初始化,晓得吧,就是给某些变量赋初值。

大概这么多,这上面的代码看不懂,没关系,因为具体我也看不懂,

绝对不影响你写程序,然后找到这个函数下面的一条语句:

//

后面的是注释语句,意思是,在下面添加你的额外的代码,

我们就可以在这下面添加自己要写的代码了,这个注释要记住啊,

在以后我们要添加语句通常都是在这个下面添加,一般每个函数下面

都会有。

还有一个函数要了解:

这个函数是什么啊,还记得吗。对,这个就是

CTestDlg

的构造函数,

当然你也可以在这里面初始化一些成员变量。好了,系统为我们生成

的类的函数,你只要了解这两个就行了,

哦,对了,如果我想要回到刚才那个“对话框“的绘制界面那里怎

么回去呢?我有办法。选中下面这个

资源视图,这个视图就是包括一些对话框资源啊,图标资源啊,等。

然后:单击红色标记就OK了,这个也要记住啊,

再来了解第三个视图:文件视图

这几个的意思都晓得吧,应该比我的英文好吧,展开头

文件

选择(老大,我必须说下,我的这个文件名应该和你

的会不相同,但是共同点是后面都有个Dlg.h,命名的规则就是工程名+Dlg.h,

下同,不再做解释,)这个是最常用到的一个头文件了,记住了。

它能做什么用呢,哦,先来谈下,为什么系统会帮我们这样分配这个MFC的程序

呢,为什么把头文件和资源文件分开呢,这个吗,老师也说过了,我们的实验要

求是要写成几个文件的,类的定义,及成员变量,成员函数的说明等写在头文件

中。函数的实现写在资源文件中,一般的一个完善的系统开发都是这样的(清晰,

明了),所以证明老师说的是正确的。所以,这个

是干什么的,就不用我说了吧,先双击这个头文件,

头文件

我们就可以在

public

中添加我们自己的成员变量了,说明一点,其

实我们设计的

MFC

就是在系统已有的一些函数里,或自己定义的函

数里,添加一点点代码,就

OK

了,

这下面就是函数说明了,

诶呀,不懂的话,我就这样举个例:我们书上定义类是怎样的啊。

ClassPerson{

Private:charname[10];

Public:chargetname(charname1[10]);

}

然后在类的外面实现它

.

拖动滚动条看下面。

找到程序中的如下函数说明,

这个就是刚才我们说的经常用到的类,首先它在头文件中定义说明

然后在类外中实现,在程序中找到如下函数,找某个函数会找吧,

不懂看前面。

{…………}

BOOL返回值,这是返回一个逻辑值,就是“true真或是

false

假两种情况,

CTestDlg::OnInitDialog()

就是声明

OnInitDialog()

是属于

CTest

这个类懂吧。

好了,基本的情况都介绍了,因为是快速其余系统生成的类中得函数

啊,等不知道就不用去研究了,不会影响我们写程序,

先回到对话框这个视图界面:怎样操作不用我说了吧,单击

,出现单击

这个是对话框的ID下面会有介绍。名称你的会不一样啊,找到

有命名规则是IDD_你的工程名_DIALOG.

下面先认识控件:

最常用的就是这几种了:

第五步:绘制对话框界面:

直接拖动右边的某个控件,到左边的对话框界面,绘制下面这个图型:

操作方法:例:我先拖动一个“按钮”

它会如下显示

到对话框界面。

,哦,对了,如果你按住CTRL键不动,拖动对话框面

板的控件还可以直接复制呢!

然后修改:按钮的文字。方法是:右击该按钮,在弹出的快捷菜单选择“属性”,接着弹出

如下图。

分析如下:

ID

框:修改或选择对话框的标识符名称,

ID

这个术语很重要,要记住“就像一

个人有一个名字一样,我知道这个名字,我就能找到这个人。

下面介绍几种常见

ID

,这个真的要记住啊,而且要理解

IDC_BUTTON1

按钮

IDC_CHECK1复选框IDC_RADIO1单选钮

ID

名称可以修改,在这里就不用修改了,使用默认就行了,

但是一般你看见一个

ID

名称就要知道他是属于那种控件。

很容易记,例:按钮:英文就是

BUTTON,

标题框:输入控件的名称,中英文均可。这里只需修改标题名称改为“确定“就

OK

了,其余的控件修改名称都是一样的。好了界面就绘制好了。

接下来,你可以单击编译——运行了,哈哈,是不是发现自己绘制的对话框就显

示出来了啊,但是有没有发现“当我单击某个按钮时什么事也没发生,没动静,

这是怎么回事呢,好吧,接下来就注意看了,听我娓娓道来。

我们通过一个登陆对话框的实例来深入学习

MFC

接下来就了解一下怎么去写代码,去实现各个控件的功能吧!

先看最终效果吧!

第一步:绘制界面就不说了,自己绘制吧,注意各个控件的排版啊,要整齐一点。

只说一点,因为是有个密码输入框,所以你必须设置

这个输入框输入的文字显示为*,不能让别人

看见。

操作步骤:首先右击“这个密码输入框在弹出的快捷菜单中选择“属性”

接着在单击样式选项卡。选择密码复选框。其余的地方大家也可自己去了解。例:数字选项

卡啊,就说明这个输入框中只能输入数字。

好了,接下来,你可测试一下,在,没选这个“密码”和选了这个密码之后的对话框的密码

输入框。输入文字有什么不同吧,。直接运行程序就可以,记住了,新建工程后,你可以随

时都运行你的程序,看效果,

第二步:为控件添加成员变量,成员函数。在我们书上的介绍的那种,我们以前学的,是

手工一个一个代码去写去实现添加成员变量,成员函数,但是今天学的MFC就Soeasy

了。快速添加,不用打代码,我们使用“建立类向导”来添加。

操作方法:右击对话框面板的空白处(我们称以下这个为“对话框面板“)

选择“建立类向导“弹出如下对话框。

跟你说啊,

MFC

的一切代码都可以用英文去解释它。去记住它。红色标记

1

MessageMap

消息地图(作用是位消息添加响应函数),也可以方便查看某些控

件的消息,何为消息不用我说了吧,前面已介绍了,自己去看,不懂百度,“下

面的我都是会根据那句话来做解释“消息映射,事件驱动”

红色标记3这个地方是控件的ID你看这里就ok了,对象的ID,

何为ID,还用我解释吗,前面自己去看,说了很重要是不是,上面显示了有5个ID,

这5个ID就对应了,对话框的五个控件,就像5张身份证对应5个人一样,

那我们怎么查看某个变量的ID呢,其实前面已经有了,再说下吧,右击某个控件,

选择属性,然后在对话框中你就可以看见它的ID了,

红色标记4这里是某个控件的消息,前面有些许介绍,

例我们要为登陆按钮,添加一个单击的消息,我们先选中登陆按钮对应的这个ID名称

再选择单击这个消息:下面第二个为双击,我

们单击一下就OK了,然后再单击红色标记6中得添加函数,下面

我不会在解释了,自己根据英文去理解。弹出如下图,然后填写一个函数名,随便你自己写

只要跟我们C语言定义函数名一样就行了,我们就是用默认的算了。

然后在红色标记6中就可看到我们添加的消息函数了。函数名为”OnButton

还要为按钮添加一个单击函数,自己模仿添加一个。添加时你要记住哪个函

数是登陆的消息函数,哪个是取消的消息函数啊。

接下来我们添加“成员变量“,选择红色标记2英文成员变量。

如下图

怎样添加呢,我们要为

入框添加两个变量。先选择对应的ID名称

,用户名输入框和密码输

单击红色标记6中得(添加变量)弹出如下对话框

填写一个成员变量,我写的是m_user方便记

定义变量知道吧,诶呀就是普通定义变量一样,就像inti;一样

第一个是变量的类别,我们就使用值类型,类型定义浮选择,CString这个是字符串类

你就这样理解跟string是一样的,功能差不多,这个类要记住,以后会用到。

已上就是这样一个定义变量的过程:CStringm_user;

接下来你就为密码输入框也定义一个变量吧,

一般按钮没有变量,其余的都有变量,所以我们按钮就不定义变量了。

这个也说下吧,就是这个输入框最多可以输

入多少个字符。还有这个先选择变量,然后可以直接删除它。

这个对话框的其它

选项卡,就不介绍了,用的很少,最后单击确定。

以上这个要记住啊,会经常用到。

第二步:在我们已经添加的成员函数中写代码。

操作方法如下:第一步找到该函数。

例我们要在我们刚已经添加的确定按钮的消息函数中写代码,这个函数名

你还记得吗,刚才定义函数的时候我说了要记住它,好吧,没关系,

不记得的话,我们一种办法是重新查看“建立类向导对话框中,属于确定按钮的这个函数。

第二种:直接双击

这个方法要记住哦,

这个按钮,我们马上就可跳到这个函数的地方。

好了,我们先不急着写代码,先看下我们的类视图

展开这个类,

是不是看到我们刚才添加的成员函数(即按钮的消息响应函数)和变量在其中啊,哈哈。

我们再来看看,还有没有奇特地方做了修改。

可以这样想,因为我们添加了成员变量,添加了成员函数“

还记得添加“成员变量,成员函数“是哪个文件吗,前面我们已介绍了,好说到这,我必须

说下,前面的知识大家一定要记住,OK吗?

当然就是“文件视图中的“头文件”啦!

选择

,展开我们经常用到的头文件“

是不是看到这里多了几行语句:意思如果你不懂了的话,你就OUT了。

第三步:接下来回归主题,正式写代码了,注意了啊,看好了,

先找到“确定“按钮的这个函数”自己找吧!

添加如下代码:代码不是很多,解释多,认真看看吧,

完成了,接下来测试一下吧。运行这个程序,看是不是当你输入正确的用户名和密码都为

123时,才显示“亲。,恭喜你…………”,错误就“您输入的…………“

此程序我已经测试成功,不要说你的程序有错误啊,

第四步:还有一个按钮我们没有添加代码呢,就是“取消“

单击这个按钮还没反应,接下来我们就添加如下代码吧:

OnOK();//因为当单击取消,我们就要退出这个对话框,所以这句话的意思就是这样的。

调用一个对话框退出的函数OnOK();这个也要记住了。

注意:书写这个函数时一定要注意大小写,我猜你今后肯定会出错的,

O大写,n小写OK两个大写,记住了吗?亲,

今天我们的学习就到这里了哦,

你的程序是否运行成功了呢,

是否还有什么地方不知道的错误呢?

是否感觉

MFC

很好玩呢?

是否学懂上面的知识了呢?

是否觉得还有什么更好的关于

MFC

的诚意呢?

是否觉得这个程序还不是很完善呢?

只有一个用户名和密码,而且没有注册,而且信息是显示的,

好吧,这些就留着以后解决吧,

有种方法叫做数据库,数据库就是保存数据的地方,很简但,

5

分钟就可学会我

们要用到的这个数据库的地方了,关键是数据库编程,但绝对不难,就几行代码,

实现很大得功能,

想具体了解就看当前目录下

VC

的数据库编程吧!不过初学者看不懂就算了,

哦,告诉你哦,现在你已经具备了

MFC

开发的基础知识了哦,

为以后的开发打下了基础,想深入学习

MFC

的话,可到网上,或图书馆借书来

看看。

如果想看视频:百度一搜:就是孙鑫的视频,但我看过一点,觉得一般般,不是

很好,还是多看书吧,推荐:

10

级通信班大一学期的

C/C++

程序设计的书,

当时大一第一学期我就是看这本书入门的。毕竟是教材吗,还是不错的!

课外学习

:

添加单选钮

,

复选框,列表框。

了这几个类的对象的一些成员函数,例:

CEditm_edit1,m_edit2;//

定义

CEdit

编辑框类的对象

m_edit1;

m_(0,-1);//全选编辑框的内容.

m_();

//利用m_edit2对象调用编辑框类的复制函数复制m_edit1编辑框输入的

值。

那么,粘贴呢,知道吧,不用我说了,英文

m_();//

复制m_edit1编辑框

输入的值,到m_edit2编辑框中。

。提示。当你在

VC6.0

书写

一个

MFC

对象时。如

m_edit.

当你输入完点后就会弹出一系列关于这个类的

函数,即使你不记得这个函数怎么写了,你也可以快速从其中找到正确的函数。

自己去写一下这个程序吧,按照上面的教学。觉对能够做出来。

真的。去试下吧!!!祝你好运!!

好,谢谢观赏!

OK

,不懂在问吧,


本文标签: 函数 对话框 添加 按钮 成员