VS2013/MFC基于对话框编程:[2]项目整体结构
当我们创建好一个MFC项目以后,为了更快速的编程,快速找到需要修改的部分,这就得熟悉VS开发环境的各个模块的作用,各个模块之间的关系。
工具/原料
Visual Studio 2013
项目整体结构
1、创建好一个MFC工程,观察VS项目界面的布局,上面是菜单栏和工具栏,在设计界面的左侧可以瓢遥费涓调出工具箱;右侧是属性栏、类视图、资源视图和资源管理器等;底部是一些显示错误信息、符号查询结果、项目生成信息的栏目;最下方是状态栏,显示当前开发状态。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/e1390a31dfb6326c662b1a7c89532f63228560e0.jpg)
2、打开解决方案资源管理器,可以看到所有的头文件、源文件以及资源文件都归类排序摆放,便于快速寻找需要打开的内容。点开头文件前面的三角号可以查看类的成员变量和函数。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/e177fc9147e833e0033fbeb030ea3e86314859e0.jpg)
3、看看资源视图,资源视图包含了应用程序用到的所有资源,包括对话框资源、应用图标、菜单、字符串、软件信息等等。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/d695563104ebf6a71b420198ffee1c324a184fe0.jpg)
4、打开版本信息,可以看到自己编写的应用程序的相关信息,比如版本号、公司名称等,自己觉得需要修改的可以依情况修改。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/27725684cde34b2c06a3f8cc0d0e7c75e4f443e0.jpg)
5、再看类视图,类视图包含了应用程序用到的所有类,包括自动生成的类以及开发者自己创建的类。点击类名,在下方会显示该类包含的所有成乜蓑笤漶员变量和函数,不同类型的函数或者变量都有不同的符号标记。通过类视图可以快速访问类的头文件和源文件,双击类名打开头文件,点击下方的函数可直接跳转到对应的函数定义处。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/e4b5e2f5ee0d3acef29af1d887e265e7350fbbe0.jpg)
6、属性页用来修改和查看对话框中控件(包括对话框本身)的各项属性,坡庥汩赴每类控件的属性项都不一样,需要根据情况修改,当然所有的属性都可以以代码形式实现,但能直接修改最好,方便快捷。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/bff8683e21c2bbd6829dee5b116186254093aee0.jpg)
项目文件
1、找到项目的生成文件,如果没有生成解决方案,应用文件是不包含Debug文件夹的;其中的.sln文件就是项目启动文件,双击这个文件就会自动通过VS2013打开。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/555acf0ff2260d9a5f43942a622abab84340a5e0.jpg)
2、整个项目文件系统中会有两个debug文件夹,项目的直接目录下的debug文件夹包含了生成的exe文件,其中的.ilk文件用于编译连接。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/4080a927ac530688ea61267957e8904801fc96e0.jpg)
3、项目名称下的文件夹里包含了应用程序用到的资源,头文件,源文件等。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/5e615d715fdb36203f774e3aabc5260f89358de0.jpg)
4、项目名称下的文件夹包含一个res文件夹,是用来存放应用程序图标的,可以自己替换从而更改应用图标,不过名称和格式要一致,否则无法识别。
![VS2013/MFC基于对话框编程:[2]项目整体结构](https://exp-picture.cdn.bcebos.com/589f5b0788013870450cb93f2d08a50f95fc83e0.jpg)