VS2021之MFC入门到精通教程(1-55全数)

合集下载

VS2010之MFC入门到精通教程

VS2010之MFC入门到精通教程

VS2010/MFC编程入门教程之目录第一部分:VS2010/MFC开发环境VS2010/MFC编程入门之前言VS2010/MFC编程入门之一(VS2010与MSDN安装过程图解)第二部分:VS2010/MFC应用程序框架VS2010/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)VS2010/MFC编程入门之三(VS2010应用程序工程中文件的组成结构)VS2010/MFC编程入门之四(MFC应用程序框架分析)VS2010/MFC编程入门之五(MFC消息映射机制概述)第三部分:对话框VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)VS2010/MFC编程入门之七(对话框:为对话框添加控件)VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)VS2010/MFC编程入门之九(对话框:为控件添加消息处理函数)VS2010/MFC编程入门之十(对话框:设置对话框控件的Tab顺序)VS2010/MFC编程入门之十一(对话框:模态对话框及其弹出过程)VS2010/MFC编程入门之十二(对话框:非模态对话框的创建及显示)VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)VS2010/MFC编程入门之十四(对话框:向导对话框的创建及显示)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)VS2010/MFC编程入门之十六(对话框:消息对话框)VS2010/MFC编程入门之十七(对话框:文件对话框)VS2010/MFC编程入门之十八(对话框:字体对话框)VS2010/MFC编程入门之十九(对话框:颜色对话框)第四部分:常用控件VS2010/MFC编程入门之二十(常用控件:静态文本框)VS2010/MFC编程入门之二十一(常用控件:编辑框Edit Control)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)VS2010/MFC编程入门之二十六(常用控件:滚动条控件Scroll Bar)VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)VS2010/MFC编程入门之二十八(常用控件:列表视图控件List Control 上)VS2010/MFC编程入门之二十九(常用控件:列表视图控件List Control 下)VS2010/MFC编程入门之三十(常用控件:树形控件Tree Control 上)VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)VS2010/MFC编程入门之三十三(常用控件:标签控件Tab Control 下)第五部分:菜单、工具栏与状态栏VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)VS2010/MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2010/MFC编程入门之三十六(工具栏:工具栏资源及CToolBar类)VS2010/MFC编程入门之三十七(工具栏:工具栏的创建、停靠与使用)VS2010/MFC编程入门之三十八(状态栏的使用详解)第六部分:文档、视图和框架VS2010/MFC编程入门之三十九(文档、视图和框架:概述)VS2010/MFC编程入门之四十(文档、视图和框架:各对象之间的关系)VS2010/MFC编程入门之四十一(文档、视图和框架:分割窗口)第七部分:MFC常用类VS2010/MFC编程入门之四十二(MFC常用类:CString类)VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)第八部分:字体和文本输出VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)第九部分:图形图像VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)VS2010/MFC编程入门之五十一(图形图像:GDI对象之画刷CBrush)第十部分:Ribbon界面开发VS2010/MFC编程入门之五十二(Ribbon界面开发:创建Ribbon样式的应用程序框架)VS2010/MFC编程入门之五十三(Ribbon界面开发:为Ribbon Bar添加控件)VS2010/MFC编程入门之五十四(Ribbon界面开发:使用更多控件并为控件添加消息处理函数)VS2010/MFC编程入门之前言鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。

vc++MFC基础教程

vc++MFC基础教程

1.2.3 编辑区
• 在Visual C++中,编写应用程序代码的位置就是编辑区。该编辑区的 功能十分强大,智能化程度也非常高。在编辑区内,除了能编写 C/C++语言外,还能编写SQL、HTML和VBScript等其他编程语言。 如下图所示。
1.2.4 联机帮助
• Visual C++6.0不像其他集成开发环境一样把帮助系统集成在开发环境 内部,而是提供了一个专门为Visual C++设计的MSDN类库。MSDN 虽然是一个独立的帮助系统,但却能很好地和Visual C++6.0集成在一 起。 • MSDN的使用方式有以下几种: • 单击【Help】|【Contents】命令; • 单击【Help】|【Search】命令; • 单击【Help】|【Index】命令; • 按下【F2】键。 • 通过上述几种命令方式,即可运行MSDN。
1.2.1 工作区窗口和输出窗口
• Find in Files 1和Find in Files 2:两个选项卡的作用相同,用于显示 从多个文件中查找字符串的结果。当用户想要查看某个函数或变量出 现在哪些文件中,单击【Edit】|【Find in Files】命令,弹出【Find in Files】对话框,如下图所示。在【Find in Files】对话框中的 【Find what】后的编辑框中,输入想要查找的内容,单击【Find】按 钮即可。查找到的内容会输出到Find in Files选项卡中。
第1章 Visual C++集成开发环境
• Visual C++是一个功能强大的可视化应用程序开发工具。其凭借强大 功能,受大了广大程序员的欢迎。当今流行的Visual C++的开发工具 是6.0版本。下面来介绍Visual C++ 6.0的一些基本情况。

VS2010-MFC编程入门

VS2010-MFC编程入门

VS2010/MFC编程入门之前言分类标签: 编程入门VC++VS2010MFC鸡啄米的C++编程入门系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了一定的了解了。

但是教程中讲的例子只是一个个简单的例程,并没有可视化窗口。

鸡啄米在这套VS2010/MFC编程入门教程中将会给大家讲解怎样使用VS2010进行可视化编程,也就是基于窗口的程序。

C++编程入门系列主要偏重于理论方面的知识,目的是让大家打好底子,练好内功,在使用VC++编程时不至于丈二和尚摸不着头脑。

本套教程也会涉及到VC++的原理性的东西,同样更重视实用性,让大家学完本套教程以后,基本的界面程序都能很容易编写出来。

VC++简介VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根本区别就在于,C ++是语言,而VC++是用C++语言编写程序的工具平台。

VC++不仅是一个编译器更是一个集成开发环境,包括编辑器、调试器和编译器等,一般它包含在Visual Studio中。

Visual Studio包含了VB、VC++、C#等编译环境。

当然我们在使用VC++ 6.0的时候为了轻便,总是只单独安装VC++ 6.0。

但自微软2002年发布Visual 以来,微软建立了在. NET框架上的代码托管机制,一个项目可以支持多种语言开发的组件,VC++同样被扩展为支持代码托管机制的开发环境,所以.NET Framework是必须的,也就不再有VC++的独立安装程序,不过可以在安装Visual Studio时只选择VC++进行安装。

VC++版本的选择:VS2010因为VC++ 6.0以后的版本不再有独立的安装程序,所以鸡啄米在教程中将不会称VC++ 6. 0以后的版本为VC++ 7.0等等,而是用VC++所属的Visual Studio的版本名称代替,比如VS2003。

近些年VC++主要的版本包括:VC++ 6.0、VS2003、VS2005、VS2008和VS2010。

C++_MFC快速超简单入门.

C++_MFC快速超简单入门.

C++ MFC快速超简单入门学习注意:红色字体为重要的信息,必须理解并记住。

在学习MFC之前,你必须对C++的“类和对象有一定的认识和理解,因为MFC就是C++完全的面向对象设计,它里面封装了好多类,我们只要调用就OK,就像C语言调用库函数一样,直接使用,这就是C++第一特性:封装性,第二性就是继承与派生,这个在MFC中体现得淋淋至间(字打错了)。

如果不懂,我再来解释一下,例:有一个商品类,class GOODS 商品属性有名字,价格它可作为一个基类,我可以派上出苹果类,class Apple :public GOODS . 苹果属性出了继承了商品的属性名字,价格之外,还可派生出,颜色,等属性,继承与派生就是一个是另一个的子集,但是这个子集不仅包括父集的特征,还具有一些新的特性,懂了吧,这样。

MFC其中重要的类是:CDialog 对话框类,CEdit,(编辑框类)CButton,(按钮类)CRadio(单选钮类),这些都是作为基类,由我们自己定义的类去派生它们。

好了,现在先了解一下什么是MFC吧,请看当前目录下的MFC入门知识的幻灯片1—20张,或大概的浏览一下当前目录下的其它连个word文件,后面的幻灯片我觉得没必要看了,因为是快速吗,节约时间,(首先看不懂没关系,)但但看完之后,必须掌握如下知识:1.MFC是作什么用的?与以前我们写的C,C++语言有什么不同。

以及它的一些优点,不同,以前的是控制台的界面不好看,不友好,操作不方便,黑框框的一片。

MFC反之。

优点:可用极少的代码实现强大的功能,2.关于MFC的一些术语,概念啊3.你要知道MFC的对话框是由控件组成的,具有哪些控件(例按钮:Button, 单选钮:radio,Edit)例:要知道MFC的编程的原则,也就是宗旨理念吧,“消息映射,事件驱动“,这句话要记住并理解,很重要,真的。

那到底是什么意思呢?现实举例:一个人具备一种“感知“的能力,(也可称消息吧),当用火接近这个人时(发生的事件),就会(驱动)这个人做出反应,远离”火“,用MFC举例:一个按钮有什么消息啊,我可以单击它,所以它具备单击的消息:第一个就是左键单击的消息,第二个就是双击的消息,见名思议就OK了。

VS2021和MFC编程入门之35(菜单:菜单及CMenu类的使用)

VS2021和MFC编程入门之35(菜单:菜单及CMenu类的使用)

VS2021和MFC编程入门之35(菜单:菜单及CMenu类的使用) VS2021MFC编程入门之三十五(菜单:菜单及CMenu类的使用)VS2021的菜单资源,这里主要讲菜单及CMenu类的使用。

CMenu类的主要成员函数MFC为菜单的操作提供了CMenu类,下面鸡啄米就常用的几个成员函数进行简单的介绍。

BOOL LoadMenu(UINT nIDResource);加载菜单资源,并将其附加到CMenu对象上。

参数nIDResource指定了要加载的菜单资源的ID。

如果菜单加载成功则返回TRUE,否则返回FALSE。

BOOL DeleteMenu(UINT nPosition,UINT nFlags);在菜单中删除一个菜单项。

参数nPosition指定要删除的菜单项。

参数nFlags就用来解释nPosition的意义,为MF_BYCOMMAND时说明nPosition表示菜单项的ID,为MF_BYPOSITION时说明nPosition表示菜单项的位置,第一个菜单项的位置为0。

如果删除菜单项成功则返回TRUE,否则返回FALSE。

BOOL TrackPopupMenu(UINT nFlags,int x,int y,CWnd* pWnd,LPCRECT lpRect = 0);用来在指定位置显示一个浮动的弹出式菜单。

参数nFlags指定屏幕坐标和鼠标位置的标志,可以是以下取值:TPM_CENTERALIGN:菜单在水平方向上相对于参数x指定的坐标值居中显示TPM_LEFTALIGN:菜单的左侧与参数x指定的坐标值对齐 TPM_RIGHTALIGN:菜单的右侧与参数x指定的坐标值对齐 TPM_BOTTOMALIGN:菜单的底部与参数y指定的坐标值对齐 TPM_TOPALIGN:菜单项的顶部与参数y指定的坐标值对齐TPM_VCENTERALIGN:菜单在垂直方向上相对于参数y指定的坐标值居中显示这里先介绍这几个比较常用的,其他可参见MSDN。

VC MFC入门教程

VC   MFC入门教程

本文由世界模范贡献 pdf1。

Visual C++/MFC入门教程 文章加入时间:2004年9月6日23:20 (本教程由L3工作室收集整理) 讲述Visual C+ +/MFC开发的基本知识,文档/视结构,窗体控件的使用和一些基本的网络开发知识。

同 时指出一些在开发中容易犯的错误和一些注意事项。

本教程主要侧重于讲解MFC中各个类的使用和函数功 能,同时在重要内容上都带有例程。

 整个教程分为六章,分别为 目录 +-- 第一章 VC入门 |------ 1.1 如何学好VC |------ 1.2 理解Windows消息机制 |------ 1.3 利用Visual C++/MFC开发Windows程序的优势 |------ 1.4 利用MFC进行开发的通用方法介绍 |------ 1.5 MFC中常用类,宏,函数介绍 +-- 第二章 图形输出 |------ 2.1 和GUI有关的各种对象 |------ 2.2 在窗口中输出文字 |------ 2.3 使用点,刷子,笔进行绘图 |------ 2.4 在窗口中绘制设备相关位图,图标,设备无关位图 |------ 2.5 使用各种映射方式 |------ 2.6 多边形和剪贴区域 +-- 第三章 文档视结构 |------ 3.1 文档 视图 框架窗口间的关系和消息传送规律 |------ 3.2 接收用户输入 |------ 3.3 使用菜单 |------ 3.4 文档,视,框架之间相互作用 |------ 3.5 利用序列化进行文件读写 |------ 3.6 MFC中所提供的各种视类介绍 file:///D|/我的文档/My EasyCHM files/Decompilations/VC/18.html[2011/1/18 0:03:26] +-- 第四章 窗口控件 |------ 4.1 Button |------ 4.2 Static Box |------ 4.3 Edit Box |------ 4.4 Scroll Bar |------ 4.5 List Box/Check List Box |------ 4.6 Combo Box/Combo Box Ex |------ 4.7 Tree Ctrl |------ 4.8 List Ctrl |------ 4.9 Tab Ctrl |------ 4.A Tool Bar |------ 4.B Status Bar |------ 4.C Dialog Bar |------ 4.D 利用AppWizard创建并使用ToolBar StatusBar Dialog Bar |------ 4.E General Window |------ 4.F 关于WM_NOTIFY的使用方法 +-- 第五章 对话框 |------ 5.1 使用资源编辑器编辑对话框 |------ 5.2 创建有模式对话框 |------ 5.3 创建无模式对话框 |------ 5.4 在对话框中进行消息映射 |------ 5.5 在对话框中进行数据交换和数据检查 |------ 5.6 使用属性对话框 |------ 5.7 使用通用对话框 |------ 5.8 建立以对话框为基础的应用 |------ 5.9 使用对话框作为子窗口 +-- 第六章 网络通信开发 |------ 6.1 WinSock介绍 |------ 6.2 利用WinSock进行无连接的通信 file:///D|/我的文档/My EasyCHM files/Decompilations/VC/18.html[2011/1/18 0:03:26] +------ 6.3 利用WinSock建立有连接的通信 file:///D|/我的文档/My EasyCHM files/Decompilations/VC/18.html[2011/1/18 0:03:26] Visual C++/MFC入门教程 文章加入时间:2004年9月6日23:20 (本教程由L3工作室收集整理)  1.1 如何学好VC 这个问题很多朋友都问过我,当然流汗是必须的,但同时如果按照某种思路进行有计划的学习就会起到 更好的效果。

C++MFC教程

第1章Visual C++基础本章首先介绍了Visual C++ 6.0的安装,然后讨论了应用程序向导、类向导,以及文档视图结构、IDE、辅助工具等几方面的内容。

应用程序向导和类向导实际上是IDE的一部分,由于特别重要,故单独列出。

辅助工具讲的是第三方开发的辅助工具,它是集成开发环境的补充,有了它,编写程序将更加轻松快捷。

本章还将针对各个难点提供多个简单而实用的例子,可以帮助读者快速学习并掌握Visual C++开发基础。

1.1.1 Visual C++ 6.0的安装1.1.2 应用程序向导1.1.3 类向导1.1.4 文档视图结构1.1.5 IDE1.1.6 辅助工具1.2.1 新建工作空间1.2.2 增加消息映射项1.2.3 关联成员变量1.2.4 调试技巧1.2.5 单文档多视图1.2.6 多文档示例1.3.1VC项目文件说明1.3.2IDE使用技巧1.3.3常见问题1.1.2 应用程序向导使用应用程序向导可以快速生成程序框架。

选择菜单“File→New”命令,此时会弹出“New”对话框,下面对该对话框中的常用选项进行逐一说明。

1.文件(Files)属性页单击“Files”标签,打开“Files”属性页,如图1-3所示。

图1-3 文件属性页文件类型虽然多,但常用的只有两种:C/C++ Header File(C/C++头文件)和C/C++ Source File (C/C++源文件)。

新建一个文件,可以按照以下步骤操作。

(1)选择合适的文件类型。

(2)如果想把新文件加入到工程内,选中“Add to project”复选框,并在下面的组合框中选择合适的工程。

如果当前没有打开任何工程,“Add to project”会被禁用。

(3)在“File”编辑框中输入合适的文件名。

(4)在“Location”编辑框中输入文件存放位置。

2.工程(Projects)属性页单击“Projects”标签,弹出“Projects”属性页,如图1-4所示。

MFC教程

pup第3章MFC基本应用程序的建立C++面向对象程序设计语言是在C语言的基础上发展起来的,它与传统的程序设计方式不同,而是一种新的程序设计范型。

它对降低软件的复杂性,改善其重要性和维护性、提高软件的生产效率,有着十分重要的意义。

因此面向对象程序设计被普遍认为是程序设计方法的一场实质性的革命Visual C++是Microsoft公司推出的目前使用极为广泛的基于Windows平台的C++可视化开发环境,它使C++语言在Windows平台上得到了有效的可视化的应用。

C++编程都是在控制台方式下运行的,这样可以在不需要太多涉及Visual C++的细节而专心于C++程序设计的本身。

但是,当C++及程序设计基本掌握后,我们就不能仅停留在控制台方式下运行,因为学习C++的目的在于应用,从本章开始,将着重讨论如何用Visual C++的强大功能开发Windows应用程序。

我们将看到,展现在你面前的是彩色亮丽的图形图像及千变万化的可移动的文字、影像界面。

像市场流行的游戏软件、企事业管理、图形图像处理、银行、电信、教育及各大小网站的软件编程和网页设计等。

本章一、二节是Windows编程和MFC编程,不是我们重点掌握的,大家可以自己看看,也是有帮助的。

我们从第三节(150页):使用MFC AppWizard(应用程序向导)开始讲。

前面一、二节中需要大家掌握的是:1、Windows应用程序上机编程操作步骤(C++上机编程操作步骤,教材140页)2、理解Windows编程特点中的:消息驱动机制概念、图形设备接口概念、基于资源的程序设计概念、动态连接库概念、进程和线程的概念、阅读147页MFC 应用程序并理解其代码(146—149页)(做为讨论题留给大家)实际上,在Visual C++6.0中,我们不需要加入更多的Windows程序代码,就能创建所需要的应用程序,这就是我们要着重掌握的MFC AppWizard(应用程序向导),它能为用户快速、高效、自动地生成一些常用的标准程序结构和编程风格,它们被称为应用程序框架类型(MFC AppWizard提供的各应用程序框架类型150页说明)其中:MFC AppWizard(exe)是我们常用的(一般MFC的Windows应用程序),它包含用户最常用、最基本的3种应用程序类型:单文档、多文档和基于对话框的应用程序。

mfc入门讲义

属性’对话框,在‘标明’编辑框中输入该菜单 项的显示名称。
(3)在生成工程时,已生成了‘IDD_STU1_DIALOG’对话框 类。把该菜单加入到该对话框类:
在‘ResourceView’选项卡中,执行“双击 ‘IDD_STU1_DIALOG ’对话框标识符”,在‘编辑’窗体可 见该对话框轮廓图,执行“右击该对话框轮廓图空白处|属性”, 弹出‘对话 属性’对话框,在‘常规’选项卡中‘菜单’下拉 列表框上选择‘IDR_MENU1’。 (4)执行IDE菜单命令“组建|执行”,可见本工程应用程序的 运行窗体上显示该菜单。
在‘ResourceView’选项卡中,执行“双击 ‘IDD_DIALOG1’对话框标识符”,在‘编辑’窗体可见该对 话框轮廓图,执行“双击该对话框轮廓图空白处”,弹出 ‘Adding a class’对话框;按‘OK’按钮,弹出‘New Class’对 话框,在‘name’编辑框中输入新类名为‘newdlg1’,按‘ok’按 钮;在出现的‘MFC ClassWizard ’对话框中按‘确定’按钮。
2.处理菜单消息
当点击菜单项时会产生消息,该消息会传递到菜单所在窗口,
如果该窗口类设置接受和处理该消息的函数,窗口对象会查到 该类对象对该消息的处理函数。 (1)菜单项标识符(ID)的查找
在IDE ‘工作空间’ 窗体的‘ResourceView’选项卡中, Menu资源下可见一个ID (标识符)为IDR_MENU1的菜单资源。 双击该ID,在IDE工作区会显示该菜单的框架,双击菜单项会 弹出‘菜单项目 属性’对话框,在该对话框中可知道该菜单项 ID。 (2)建立接受菜单项消息的类和消息处理函数
//dxdlg1的窗体
(3)无模式对话框的窗体删除 对话框类对象有一个删除对话框成员函数: virtual BOOL DestroyWindow( ); 例如: dxdlg1. DestroyWindow( ); //删除对话框对象的窗体

Visual C++ 6.0 MFC 入门教程-闻怡洋


66
CString CFileDialog::GetFileTitle ( ) 得到完整的文件名,不包括目录名和扩展名如:test1 66
CString CFontDialog::GetFaceName( ) 得到所选字体名字。..................................................... 67 COLORREF CFontDialog::GetColor( ) 得到所选字体的颜色。................................................ 67 BOOL CFontDialog::IsStrikeOut( )................................................................................................. 67 BOOL CFontDialog::IsUnderline( )................................................................................................. 67 5.8 建立以对话框为基础的应用................................................................................................... 67 5.9 使用对话框作为子窗口............................................................................................................68 //由于 CFormView 的成员受保护,所以必须对指针进行强制转换..........................................69 6.1 WinSock 介绍............................................................................................................................. 69 6.2 利用 WinSock 进行无连接的通信...........................................................................................73 CDialog::OnInitDialog();..................................................................................................................73 CDialog::OnInitDialog();..................................................................................................................74 CDialog::OnInitDialog();..................................................................................................................75
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
若是要继续安装MSDN,先不要卸载虚拟光驱映像。
三.安装MSDN
咱们利用VS2021进行软件开发一样离不开帮忙文档,即MSDN。在本地安装MSDN的方式如下:
在开始菜单的“所有程序”->“Microsoft Visual Studio 2021”->“Visual Studio Tools”下选择“Manage Help Settings - ENU”:
点“Update”进行安装,等待其完成绩可以了。
利用MSDN时点击开始菜单的“所有程序”->“Microsoft Visual Studio 2021”->“ocumentation”即可。
到此VS2021和MSDN的安装进程就结束了。以后就可以够正式利用VS2021进行软件开发了。至于在鸡啄米的C++编程入门系列中已经介绍过,大家可以看看。
鸡啄米这里简略演示下如何生成单文档应用程序框架,让大家先有个直观的了解,有不睬解的地方可以留着以后回来再看。下面依照操作步骤一步步讲解:
1.点菜单栏File->New->Project,弹出New Project对话框,咱们可以选择工程类型。
若是安装完VS2021以后第一启动时已经设置为VC++,则Installed Templates->Visual C++项会默许展开,而如果没有设置VC++,则可以展开到Installed Templates->Other Languages->Visual C++项。因为咱们要生成的是MFC程序,所以在“Visual C++”下选择“MFC”,对话框中间区域会出现三个选项:MFC ActiveX Control、MFC Application和MFC DLL。MFC ActiveX Control用来生成MFC ActiveX控件程序。MFC Application用来生成MFC应用程序。MFC DLL用来生成MFC动态链接库程序。固然我们要选择MFC Application。
VS2021/MFC编程入门教程之目录
第一部份:VS2021/MFC开发环境
第二部份:VS2021-MFC应用程序框架
第三部份:对话框
第四部份:常常利用控件
第五部份:菜单、工具栏与状态栏
第六部份:文档、视图和框架
第七部份:MFC常常利用类
第八部份:字体和文本输出
第九部份:图形图像
第十部份:Ribbon界面开发
此对话框的“Resource language”还提供语言的选择,这里默许选择英语。“Project style”可选择工程风格,咱们选择默认的“Visual Studio”风格。“Use of MFC”有两个选项:Use MFC in a shared DLL(动态链接库方式利用MFC)和Use MFC in a static library(静态库方式使用MFC)。选择Use MFC in a shared DLL时MFC的类会以动态链接库的方式访问,所以我们的应用程序本身就会小些,可是发布应用程序时必需同时添加必要的动态链接库,以便在没有安装VS2021的机子上能够正常运行程序。选择Use MFC in a static library时MFC的类会编译到可执行文件中,所以应用程序的可执行文件要比上种方式大,但可以单独发布,不需另加包括MFC类的库。这里我们使用默认的Use MFC in a shared DLL。点“Next”按钮。
固然VC++不是只能够创建MFC应用程序,一样也能够进行Windows SDK编程,可是那样的话就舍弃了VC++的核心,放弃了VC++最壮大的部份。MFC也不是只能用于VC++中,它一样也可以用在Borland C++等编译器中,固然没有几个人这样做。
本节旨在让大家对VC++、VS2021和MFC有大体的概念上的熟悉,后面鸡啄米会带大家进入VS2021/MFC的世界,让大家轻松的开发各类包括窗口、图形等的可视化程序。
二.安装VS2021
下载后进行安装。安装方式与一般的iso文件一样,可以利用虚拟光驱软件Daemon Tools安装,也可以将其解压后点击进行安装。
鸡啄米为了让大家更直观的看到安装进程,我将在自己机子上再从头安装一次,并截图为大家讲解。
这里利用Daemon Tools安装VS2021。首先打开Daemon Tools,屏幕右下角会出现托盘图标,在图标上点右键,会弹出菜单,再把鼠标移到菜单项“虚拟设备”上,然后再移到子菜单项“设备 0:[L:] 无媒体”上,最后点击下一级子菜单项“装载映像”,弹出对话框选择文件。
VC++ 占用的系统资源比较少,打动工程、编译运行都比较快,所以博得很多软件开发者的青睐。但因为它先于C++标准推出,所以对C++标准的支持不太好。举个例子:
for(int i=0; i<5; i++)
{
a[i] = i;
}
for语句中声明的变量i,对于VC++ 来讲,出了for循环仍能利用。但很显然这与C++标准对于变量的规定不符合。
在对话框下部有Name、Location和Solution name三个设置项。意义如下:Name--工程名,Location--解决方案路径,Solution name--解决方案名称。这里Name咱们设为“HelloWorld”,Location设置为“桌面”的路径,Solution name默许和Name一样,固然可以修改成其他名字,这里我们不作修改,也利用“HelloWorld”。点“OK”按钮。
VC++与MFC
讲VC++免不了要提MFC,MFC全称Microsoft Foundation Classes,也就是微软基础类库。它是VC++的核心,是C++与Windows API的结合,很完全的用C++封装了Windows SDK(Software Development Kit,软件开发工具包)中的结构和功能,还提供了一个应用程序框架,此应用程序框架为软件开发者完成了一些例行化的工作,比如各类窗口、工具栏、菜单的生成和管理等,不需要开发者再去解决那些很复杂很乏味的难题,比如每一个窗口都要利用Windows API注册、生成与管理。这样就大大减少了软件开发者的工作量,提高了开发效率。
下图左侧面板中正在显示的视图就是Solution Explorer,视图中有一个解决方案-HelloWorld,此解决方案下有一个同名的工程-HelloWorld。
在应用程序向导生成应用程序后,VS2021会在用户设置的路径下,以解决方案名为名称成立一个目录,里面寄放自动生成的文件。
利用VS2021应用程序向导生成单文档应用程序框架
VS2021/MFC编程入门之二(利用MFC向导生成单文档应用程序框架)
解决方案与工程
鸡啄米在中已经讲了解决方案与工程的概念,这里再重提一下。每一个应用程序都作为一个工程来处置,它包括了头文件、源文件和资源文件等,这些文件通过工程集中管理。在VS2021中,工程都是在解决方案管理之下的。一个解决方案可以管理多个工程,可以把解决方案理解为多个有关系或没有关系的工程的集合。VS2010提供了一个Solution Explorer解决方案阅读器视图,可以显示当前解决方案的内容,当新建一个工程时可以选择新建一个解决方案仍是加入当前解决方案。
3.接下来弹出的对话框上部写有“Application Type”,固然是让选择应用程序类型,咱们看到有四种类型:Single document(单文档)、Multiple documents(多文档)、Dialog based(基于对话框)和Multiple top-level documents。我们选择Single document类型,以生成一个单文档应用程序框架。单文档应用程序运行时是一个单窗口界面。
此处是让咱们选择要安装的功能,有两种:Full(完全)和Custom(自概念)。Full选项表示安装所有编程语言和工具,Custom选择表示可以自概念要安装的编程语言和工具。右边可以更改安装路径,鸡啄米建议不要安装到C盘,因为它占用的空间比较大。鸡啄米安装到了D盘,利用Full完全安装。若是选择Custom安装,点“Next”则出现如下画面:
VS2021/MFC编程入门之前言
鸡啄米的C++系列给大家讲了C++的编程入门知识,大家对C++语言在语法和设计思想上应该有了必然的了解了。可是教程中讲的例子只是一个个简单的例程,并无可视化窗口。鸡啄米在这套VS2021/MFC编程入门教程中将会给大家讲解如何利用VS2021进行可视化编程,也就是基于窗口的程序。
弹出对话框:
可以将帮忙库存在默许路径,也可以修改寄放路径。鸡啄米利用默许路径,点“OK”出现:
选择“Install Content From Disk”后弹出对话框选择帮忙所在文件,这时需要在加载了VS2021的虚拟光驱中找,选择图中所示路径:
点OK后出现如下对话框,可以点“Add”选择要添加的帮忙库,鸡啄米全数添加了。
随着VC++版本的更新,对C++标准的支持愈来愈好,对各类技术的支持也愈来愈完善。但同时新版本所需的资源也愈来愈多,对处置器和内存的要求愈来愈高。到VS2021,光安装文件就2G多,安装后的文件占3G多空间,其运行也常常受处置器和内存等性能的限制。但鸡啄米仍是推荐大家利用VS2021,毕竟它是最新版本,类库和开发技术都是最完善的,本教程也将利用VS2021为大家做例程的演示。固然若是系统配置确实比较低,可以选择VS2021,VS2021和VS2021相较仍是要轻量级一些的。VC++ 已通过时,奉劝大家尽可能别用了。
相关文档
最新文档