本节书摘来自异步社区出版社《Visual C++ 开发从入门到精通》一书中的第1章,第1.2节,作者: 王东华 , 李樱,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.2 Visual C++ 6.0开发环境
知识点讲解:光盘视频PPT讲解(知识点)第1章Visual C++ 6.0开发环境介绍.mp4
学习任何一门程序语言,都需要遵循图1-12所示的过程。本节将介绍Visual C++ 6.0集成开发环境的基本知识。
![0359fbe8a3746ad80af9abff515e476c0f366303](https://i-blog.csdnimg.cn/blog_migrate/f52c448cf71d39f509509bd62a1d6ff9.png)
图1-12 学习一门语言的过程
1.2.1 熟悉集成开发环境
在打开Visual C++ 6.0后,需要熟悉Visual C++ 6.0这个集成开发环境。首先从Windows操作系统中选择“开始”→“程序”→Microsoft Visual Studio 6.0→Microsoft Visual C++6.0命令,启动Visual C++集成开发环境,并出现集成开发环境的主窗口Developer Studio。
1.主窗口Developer Studio
Visual C++ 6.0通过Developer Studio窗口将所有组件集成到开发环境中,用户便可利用Developer Studio编写各种Windows应用程序。默认情况下,集成开发环境的有关工具是无法使用的,只有在创建一个新工程或打开一个现有工程之后,才能查看集成开发环境。
实例002 演示集成开发环境的主窗口Developer Studio
视频路径 光盘视频实例第1章002
(1)启动Visual C++ 6.0,选择File→New命令,弹出New对话框,如图1-13所示。
![ef20d2457217e356f7019ec1100765b3430cd57a](https://i-blog.csdnimg.cn/blog_migrate/46a5f63f99d2667d7167d6675bf5e10c.png)
范例003:对齐凌乱的代码
源码路径:光盘\演练范例\003
视频路径:光盘\演练范例\003
范例004:判断代码中的括号是否匹配
源码路径:光盘\演练范例\004
视频路径:光盘\演练范例\004
图1-13 创建一个应用程序
(2)在Project页面选择MFC AppWizard[exe]选项,在Project name编辑框中输入项目名称“MySDIDemo”,在Location编辑框中输入保存项目的路径,单击OK按钮,进入MFC AppWizard-Sep1操作向导的第一步。
(3)在MFC AppWizard-Sep1对话框中设置应用程序类型为Single document项,单击Finish按钮后弹出New Project Information对话框,单击OK按钮,将生成应用程序框架文件,并在项目工作区窗口打开生成的应用程序项目。集成开发环境的主窗口Developer Studio界面如图1-14所示。
![8f057f7223e2951df6f68ec6f012eca3fd9346a1](https://i-blog.csdnimg.cn/blog_migrate/5064114f25e53ae552a95ecf77de51d4.png)
图1-14 集成开发环境的主窗口Developer Studio
在Visual C++ 6.0集成开发环境中,其主窗口Developer Studio可以分为5个部分。
(1)窗口最顶端为标题栏,显示当前项目的名称和当前编辑文档的名称,如“MySDIDemo- Microsoft Visual C++-[MySDIDemoView.cpp]”。名称后面有时会显示一个星号(*),表示当前文档修改后还没有保存。
(2)标题栏下面是菜单栏和工具栏,菜单栏中的菜单项包括了Visual C++ 6.0的全部操作命令,工具栏以位图按钮的形式显示常用操作命令。
(3)工具栏下面的左边是工作区窗口,主要包括类视图(ClassView)、资源视图(ResourceView)和文件视图(FileView)3个页面,分别列出了当前应用程序中所有的类、资源和源文件。
(4)工具栏下面的右边是编辑窗口,用来显示当前编辑的C++程序源文件或资源文件。编辑窗口是含有最大化、最小化、关闭按钮和系统菜单的普通框架窗口。当打开一个源文件或资源文件时,就会自动打开对应的编辑窗口。在Developer Studio中可以同时打开多个编辑窗口。编辑窗口可以以平铺或层叠方式显示。
(5)编辑窗口和工作区窗口下面是输出窗口,当编译、链接程序时,输出窗口会显示编译和链接信息。
2.浮动窗口与停靠窗口
集成开发环境提供了两种类型的窗口:浮动窗口和停靠窗口。
(1)浮动窗口。这是带边框的子窗口,可以显示源代码和图形,以平铺或层叠的方式显示在集成开发环中,如图1-14所示的编辑窗口。
(2)停靠窗口。停靠窗口既可以固定在集成开发环境中的顶端、底端和侧面,也可以浮动在屏幕的任何位置。停靠窗口无论是浮动着还是固定着,总是出现在浮动窗口的前面。
1.2.2 菜单项
在集成开发环境中的菜单栏中提供了File、Edit、View、Insert、Project、Build、Tools、Window和Help9个菜单项,如图1-15所示。
![4993280b1d75c494c1cee35c308ac8c6f68b46f1](https://i-blog.csdnimg.cn/blog_migrate/cf44390fcfb68bed53ea11c491276cd8.png)
图1-15 集成开发环境的菜单栏
1.File菜单
File菜单中包含了用于对文件进行操作的命令选项,如图1-16所示。
![1fdac7c386ca97e2210b04a6d2bd14fd09d3b2bc](https://i-blog.csdnimg.cn/blog_migrate/a4cc0ce57de2ff1f9fbf17e16a1dd40f.png)
图1-16 File菜单
(1)New菜单项。该菜单项用于打开New对话框,利用New对话框可以创建新的文件、项目或工作区。
① 创建新的文件。如果要创建新的文件,可从New对话框的Files选项卡中选择要创建的文件类型,如图1-17所示。然后在File文本框中输入文件的名字,如果要添加新文件到已有的项目中,选中Add to project复选框并选择项目名。
![41437a8e0f5bacfd251e97b22b0dc25f2fcf8fb2](https://i-blog.csdnimg.cn/blog_migrate/b22cfdf66eda0188b3f813b88d810ba2.png)
图1-17 New对话框
② 创建新的项目。如果要创建新的项目,在New对话框的Projects选项卡选择要创建的项目类型,如图1-18所示。然后在Project Name编辑框输入项目的名字,在Location编辑框中输入项目文件地址,还可以通过Create new workspcae和Add to current workspace单选按钮,确定是创建一个新的工作区,还是添加到现有的工作区。
![ee0957ba8e937114a8599fe69173b2f5dd7a7fa0](https://i-blog.csdnimg.cn/blog_migrate/492b6dc8ac5635c9809e18b9a97145b3.png)
图1-18 Projects选项卡
③ 创建新的工作区。如果要创建新的工作区,则从New对话框的Workspaces选项卡中选择一种工作区类型,然后在Workspace name文本框中输入工作区的名字。默认只有Blank Workspace选项,用于创建一个空白工作区,如图1-19所示。
![c723712ac9e28fe17145e0ed0028f3add7fbe085](https://i-blog.csdnimg.cn/blog_migrate/8192f134c800612f136a544d2b09247f.png)
图1-19 Workspaces选项卡
④ 创建新的文档。如果要创建新的文档,则从New对话框的Other Documents选项卡中选择要创建的文档类型,然后在File文本框中输入文档的名字。如果要添加新的文档到已有的项目中,则选中Add to project复选框,然后选择项目名,如图1-20所示。
![71b842423a67954eef5ff529e19f5f6752c9f07f](https://i-blog.csdnimg.cn/blog_migrate/94a3e772b3ad0f07de262ac338321879.png)
图1-20 Other Documents选项卡
(2)Open菜单项。该菜单项用于打开已有的文件,如C++文件、Web文件、宏文件、资源文件、定义文件、工作区文件、项目文件等。选择Open菜单项,将弹出Open对话框,可以从中选择要打开的文件所在驱动器、路径及文件名。
(3)Close菜单项。该菜单项用于关闭已打开的文件,如果系统中包含多个已打开的文件,那么使用该选项就会将当前活动窗口或选定的窗口中的文件关闭。
(4)Open Workspace菜单项。与Open菜单项类似,该项也用于打开已有的文件,但主要用于打开工作区文件。选择该项将弹出Open Workspace对话框。
(5)Save Workspace菜单项。该菜单项保存打开的工作区项目。
(6)Close Workspace菜单项。该菜单项用于关闭打开的工作区。
(7)Save菜单项。该菜单项用于保存活动窗口或者当前选定窗口中的文件内容。如果所保存的文件是新文件,则系统会弹出Save as对话框,提示用户输入有效的文件名。
(8)Save As菜单项。该选项的功能与Save菜单项类似,也是保存打开的文件,不过该菜单项是将打开的文件用新的文件名加以保存。如果保存文件时想要保留该文件的备份,而不想覆盖原来的文件,那么就可以使用Save As选项,将文件用另一名字保存起来,这样就不会使新文件覆盖原来的旧文件。
(9)Save All菜单项。该菜单项用于保存所有窗口内的文件内容,而不仅仅是当前活动窗口或选定窗口的文件内容。如果某一窗口中的文件未被保存过,系统就会自动提示为该文件输入有效的文件名。
(10)Page Setup菜单项。该菜单项用于设置和格式化打印结果。选择该项将弹出Page Setup对话框,如图1-21所示,可以从中建立每个打印页的标题和脚注并设置上、下、左、右边距。
![51c6206f721f1a4ac0654e53a61c956a855ba5c7](https://i-blog.csdnimg.cn/blog_migrate/2e367fd6116eb32912b47e5d752cd246.png)
图1-21 Page Setup对话框
(11)Print菜单项。该菜单项用于打印当前活动窗口中的内容。选择该项将弹出Print对话框,可以从中设置打印范围和打印机类型。
(12)Recent Files菜单项。选择该菜单项将打开级联菜单,其中列出了最近打开过的文件名,单击某个名字即可打开相应的文件。
(13)Recent Workspaces菜单项。选择该菜单项将打开级联菜单,其中包含最近打开的工作区,单击某个名字即可打开相应的工作区。
以上两选项为打开操作提供了一种快捷方法。
(14)Exit菜单项。选择该菜单项将退出Visual C++ 6.0开发环境,在退出前,系统会自动提示用户保存各窗口的内容。
2.Edit菜单
Edit菜单中包含了用于实现编辑或者搜索功能的命令选项,如图1-22所示。
![92ced1484b3be5ae8ba64e4d134bee621a7080cd](https://i-blog.csdnimg.cn/blog_migrate/f216106db76ca6c4410a19a4094181fe.png)
图1-22 Edit菜单
(1)Undo菜单项。该菜单项用于取消最近一次的编辑修改操作。
(2)Redo菜单项。该菜单项用于最近一次的Undo操作,可以恢复被Undo命令取消的修改操作。
(3)Cut菜单项。该菜单项将当前活动窗口中选定的内容复制到剪贴板中,然后再将其从当前活动窗口中删除。
(4)Copy菜单项。该菜单项将当前活动窗口中被选定的内容复制到剪贴板中,但并不将其从当前活动窗口中删除。
(5)Paste菜单项。该菜单项用于将剪贴板中的内容插入当前光标所在的位置,必须先将内容剪切或者复制到剪贴板后,才能进行粘贴。
(6)Delete菜单项。该菜单项用于删除被选定的内容,删除以后还可以使用Undo命令来恢复删除操作。
(7)Select All菜单项。该菜单项用于选择当前活动窗口中的所有内容。
(8)Find菜单项。该菜单项用于查找指定的字符串,选择Find项将弹出Find对话框,如图1-23所示。
![022abae0450c896851b81b64a287a7319d393e7b](https://i-blog.csdnimg.cn/blog_migrate/a5cbbfeb12858a98dd180b0a297fb2b5.png)
图1-23 Find对话框
(9)Find in Files菜单项。该菜单项用于在多个文件间搜索文本,搜索的对象既可以是文本字符串,也可以是正则表达式。
(10)Replace菜单项。该菜单项用于替换指定的字符串。选择Replace项将弹出Replace对话框。可以在Find What文本框中输入替换的文本串,再在Replace With文本框中输入被替换的文本串。与Find项一样,该项也可以选择匹配方式,如大小写区分或不区分、正则表达式等。
(11)Go To菜单项。选择该菜单项将弹出Go To对话框,从中可以指定如何将光标移到当前活动窗口的指定位置(如指定的行号、地址、书签、对象的定义位置、对象的引用位置等)。
(12)Bookmarks菜单项。选择该菜单项将弹出Bookmarks对话框,从中可以设置或取消书签,用于在源文件中做标记。
(13)Advanced菜单项。选择该菜单项将弹出级联菜单,其中包含用于编辑或者修改的高级命令,如增量式搜索、将选定内容全部转换为大写或小写、显示或者隐藏制表符等。
(14)Breakpoints菜单项。选择该菜单项将弹出Breakpoints对话框,如图1-24所示,从中可以设置、删除和查看断点。
![a7d3830df23aaca37ca45a33f82ee7e71c781f8d](https://i-blog.csdnimg.cn/blog_migrate/55ac7db488e151c3642cda8ef197204b.png)
图1-24 Breakpoints对话框
(15)List Members菜单项。把鼠标指针放入某类名或该类成员函数区域内,然后选择该菜单项,系统将列出该类成员列表,包括成员变量及成员函数,可对源程序的编辑起到提示作用。
(16)Type Info菜单项。把鼠标指针放在类名或其成员函数及变量名上,然后选择该菜单项,系统将列出相应的简短类型信息。
(17)Parameter Info菜单项。把鼠标指针放在函数名上,然后,选择该菜单项,系统将列出该函数形参信息供参考。
(18)Complate Word菜单项。选择该菜单项,可以把未写完的系统API函数或MFC函数名自动补足。
3.View菜单
View菜单包含了用于实现检查源代码和调试信息功能的命令选项,如图1-25所示。
![c1a0b575a20d17a8641dbf75093c0a841c3ee8b1](https://i-blog.csdnimg.cn/blog_migrate/ce7dfbc2f228602025fd87c37f707ac7.png)
图1-25 View菜单
(1)ClassWinzard菜单项。选择该项将启动MFC ClassWizard对话框,如图1-26所示。
![bd3e926e6b953afe02e37db2d13529ba038ada80](https://i-blog.csdnimg.cn/blog_migrate/3801b4a87ddd2cdf3b02b15ab8fbccfe.png)
图1-26 MFC ClassWizard对话框
(2)Resource Symbols菜单项。选择该项用于打开资源符号浏览器,如图1-27所示,从中可以浏览和编辑资源符号。资源符号是映射到整数值上的一串字符,可以在源代码或资源编辑器中通过资源符号引用资源。
![a5811224b6cd58224ebd8ab33a363b1d12e3cf14](https://i-blog.csdnimg.cn/blog_migrate/18ccd1438c57953b5bac5b5f59ac8991.png)
图1-27 Resource Symbols对话框
(3)Resource Includes菜单项。选择该项将弹出Resource Includes对话框,如图1-28所示,从中可以修改资源符号文件名和预处理器指令。
![image])
![fc47468399a657854a735deea1baf38828492240](https://i-blog.csdnimg.cn/blog_migrate/df823f60ab18f0dbc8429c6a2120c2c1.png)
图1-28 Resource Includes对话框
(4)Full Screen菜单项。选择该项能够按全屏幕方式显示活动窗口。切换到全屏幕方式后,可以单击Toole Ful Sceen按钮或按Esc键切换回原来的显示方式。
(5)Workspace菜单项。如果工作区窗口未显示,选择该选项将显示工作区窗口。
(6)Output菜单项。在输出窗口显示程序建立过程的有关信息或错误信息,并显示调试运行时的输出结果。
(7)Debug Windows菜单项。选择该项将弹出级联菜单,用于显示调试信息窗口。这些命令选项只有在调试运行状态时才可用,如图1-29所示。
![f3f69eefbc38cca81a55e5c2e63205c5158e5830](https://i-blog.csdnimg.cn/blog_migrate/05e9261617203099da58c1fc3383c6f1.png)
图1-29 Debug Windows级联菜单
① Watch菜单项。在Watch窗口显示变量或者表达式的值。另外,还可以输入和编辑所要观察的表达式。
② Call Stack菜单项。选择该项将弹出Call Stack窗口,从中显示所有已被调用但还未返回的函数。可以用Options对话框为Debug选项卡来设置有关的选项。
③ Memory菜单项。选择该项将弹出Memory窗口,从中显示内存的当前内容。至于显示格式可以用Options对话框的Debug选项卡来设置。
④ Variables菜单项。显示当前语句和前一条语句中所使用的变量信息和函数返回值信息。这里的变量局限于当前函数或由this所指向的对象。
⑤ Registers菜单项。选择该项将弹出Registers窗口,其中显示各通用寄存器及CPU状态寄存器的当前内容。至于显示格式,可以用Options对话框为Debug选项卡来设置。
⑥ Disassembly菜单项。选择该项将显示有关的反汇编代码及源代码,以便使用户直接进入反汇编调试或混合调试(即汇编调试与反汇编调试同时进行)。显示格式可以用Options对话框的Debug选项卡来设置。
(8)Refresh菜单项。选择该项将刷新选定的内容。
(9)Properties菜单项。选择该项可以从弹出的属性对话框设置或查阅对象的属性。
4.Insert菜单
Insert菜单中的命令选项如图1-30所示,使用它们可以创建新的类、创建新的资源、插入文件到文档中、添加新的ATL对象到项目中。
![63648ef0a6bac2737c7d65745304b0db05392107](https://i-blog.csdnimg.cn/blog_migrate/1bda471c58f63d8ac09af44eea88138e.png)
图1-30 Insert菜单
(1)New Class菜单项。选择该菜单项,将弹出New Class对话框,利用该对话框可以创建新的类并添加到项目中。
(2)New Form菜单项。选择该菜单项,将弹出New Form对话框,利用该对话框可以创建新的对话框并添加到项目中。该选项是添加新的对话框的快捷方法。
(3)Resource菜单项。选择该菜单项,将弹出Insert Resurce对话框,利用该对话框可以创建新的资源或插入资源到资源文件中。
(4)Resource Copy菜单项。选择该菜单项,可以创建选定资源的备份,即复制选定的资源。
(5)File As Text菜单项。选择该菜单项将弹出Insert File对话框,可从中选择要插入文档的文件。
(6)New ATL Object菜单项。选择该菜单项将启动ATL Object Wizard,利用该向导可以添加新的ATL对象到项目中。
5.Project菜单
Project菜单中的命令选项如图1-31所示,用于管理项目和工作区。
![2ff2031d734792d3324ee5a46a1b523f7da2efe0](https://i-blog.csdnimg.cn/blog_migrate/9cabc960bee4509d3433b6bc4feaf74b.png)
图1-31 Project菜单
(1)Set Active Project菜单项。选择指定的项目为工作区中的活动项目。
(2)Add To Project菜单项。选择该菜单项将弹出级联菜单,用于添加文件、文件夹、数据链接到项目。
(3)Dependencies菜单项。选择该菜单项将弹出Project Dependencies对话框,利用该对话框可以编辑项目之间的依赖关系。
(4)Settings菜单项。选择该菜单项将弹出Project Settings对话框,如图1-32所示,从中可为项目配置指定不同的设置。
![186a799e57e036986acad649764f92ca18a5ef21](https://i-blog.csdnimg.cn/blog_migrate/654310612bd93cf12c2636baf5f6da95.png)
图1-32 Project Settings对话框
6.Build菜单
Build菜单中的命令选项如图1-33所示,其功能是编译建立和执行应用程序。
![6209ecded87914ba00139adee6d5e2a987dddeeb](https://i-blog.csdnimg.cn/blog_migrate/1e40308178f1d79037000ccce25ee5f1.png)
图1-33 Build菜单
(1)Compile菜单项。该菜单项用于编译显示在源代码编辑窗口中的源文件,用于检查源文件中是否有语法错误。如果在编译过程中检查出语法错误(警告或错误),那么将在输出窗口中显示错误信息。
(2)Build菜单项。查看项目中的所有文件,并对最近修改过的文件(其标志日期比可执行文件日期要新)进行编译和链接。如果建立过程中检测出某些语法错误就将它们显示在输出窗口中。
(3)Rebuild All菜单项。该菜单项与Build菜单项的唯一区别在于Rebuild All选项在编译和链接项目中的文件时,不管其标志日期是何时,一律重新进行编译和链接。
(4)Batch Build菜单项。该菜单项用于一次建立多个项目,选择该项将弹出Batch Build对话框,指定要建立的项目。
(5)Clean菜单项。该菜单项用于删除项目的中间文件和输出文件。
(6)Start Debug菜单项。选择该菜单项将弹出级联菜单,其中包含启动调试器控制程序运行的子选项Go、Step Into、Run To Cursor和Attach to Process,如图1-34所示。
![ea85b8e7d63044f98b6c23374d83c2f33d7cd778](https://i-blog.csdnimg.cn/blog_migrate/fe254fdcfae11fa5fd25a1f6df054c70.png)
图1-34 Start Debug级联菜单
启动调试器后,Debug菜单将代Build菜单出现在菜单栏,如图1-35所示。使用Debug菜单可以控制程序的执行。
![542604b4927efb4e9824cc9ada6dd6e05afd5885](https://i-blog.csdnimg.cn/blog_migrate/d11e1afbe43543adf45d3090831ee1a2.png)
图1-35 Debug 菜单
(7)Debugger Remote Connection菜单项。选择该菜单项将弹出Remote Connection对话框,可以从中设置远程调试链接。
(8)Execute菜单项。该菜单项用于运行程序。Visual C++系统将根据被运行程序的目标格式自动调用相应的环境。
(9)Set Active Configuration菜单项。该菜单项用于选择活动项目的配置,如Win32 Release 和Win32 Debug。
(10)Configurations菜单项。选择该菜单项将弹出Configurations对话框,可以从中编辑项目的配置。
(11)Profile菜单项。剖视器Profile用于检查程序运行行为。利用剖视器提供的信息,可以找出代码中哪些部分是高效的,哪些部分要更加仔细地检查。此外,利用剖视器还可以给出未执行代码区域的诊断信息。剖视器通常不用于查错,而是用于使程序能更好地运行。在使用剖视器之前,必须通过Project Settings对话框的Link选项打开剖视使能(Enable profiling)。
7.Tools菜单
Tools菜单中的命令选项如图1-36所示,它用来浏览程序符号定制菜单与工具栏激活常用的工具(如Spy++等)或者更改选项设置等。
![6c715290be562c6bfd5df6d91455546b848db847](https://i-blog.csdnimg.cn/blog_migrate/c416330c309025e58addd56110e36e27.png)
图1-36 Tools菜单
(1)Source Browser菜单项。默认情况下,在建立一个Visual C++ 6.0项目时,编译器会创建与项目中每一程序文件信息有关的.SBR文件实用程序BSCMAKE,这个实用程序会汇编这些.SBR文件为单个浏览信息数据库,浏览信息数据库的名字由项目基类名加上扩展名.BSC组成。
选择Source Browser选项将弹出Browse对话框,如图1-37所示。其中显示与程序中所有符号(类、函数、数据、宏、类型)有关的信息。对于不同类型的对象或上下文,浏览窗口的外观和控件是不同的。
![898ffa8feab8d172c6533ec75d1371c4ba25c351](https://i-blog.csdnimg.cn/blog_migrate/4132f834120181895490eefa0e27b37f.png)
图1-37 Browse对话框
(2)Close Source Browser File菜单项。选择该项可关闭打开的浏览信息数据库。
(3)Spy++菜单项。Spy++是Win32实用程序,用于给出系统的进程、线程、窗口和窗口消息的图形表示,如图1-38所示。
![c19342a0551229089740ad522ae53c824a274b53](https://i-blog.csdnimg.cn/blog_migrate/00b587033aabd91e8dd1b7230c880011.png)
图1-38 Spy++的对话框
Spy++具有如下3个功能。
①显示系统对象(包括进程、线程和窗口)间的图形关系。
②搜索指定的窗口、线程、进程或消息。
③查看选定对象的属性。
(4)Customize菜单项。选择该项后会弹出Customize对话框,如图1-39所示。从中可以对命令、工具栏、工具菜单和快捷键等进行定制,如添加命令到Tools菜单中、删除Tools菜单中的命令、更改命令快捷键、修改工具栏等。
![88596f4f1b970e9d1bc8344b4a6416178d7b062a](https://i-blog.csdnimg.cn/blog_migrate/8dd2aaee7097740f5d4e5b24fdac77df.png)
图1-39 Customize对话框
(5)Options菜单项。选择该项将弹出Options对话框,如图1-40所示,可以对Visual C++ 6.0 的环境设置进行更改,如调试器设置、窗口设置、目录设置和工作区设置等。
![704062f1a677e9f73a3bb57d1a4053b68f727860](https://i-blog.csdnimg.cn/blog_migrate/c65e07460d0570a6579033689925014c.png)
图1-40 Options对话框
(6)Macro菜单项。用于创建和编辑宏文件。
8.Window菜单
在Window菜单中包含了用于控制窗口属性的命令选项,如图1-41所示。
![e829a12c642b60b2e62eb8dbb609472dd2131a70](https://i-blog.csdnimg.cn/blog_migrate/58bbd9b6bcbbe9600d103532de8f2345.png)
图1-41 Window菜单
(1)New Window菜单项。选择该菜单项,将打开新的窗口,从中显示当前文档信息。
(2)Split菜单项。选择该菜单项,可将窗口拆分为多个面板,为同时查看同一文档的不同内容提供了方便。
(3)Docking View菜单项。选择该菜单项,将打开或者关闭窗口的船坞化特征。
(4)Close菜单项。选择该菜单项,将关闭选定的活动窗口。
(5)Close All菜单项。选择该菜单项,将关闭所有打开的窗口。
(6)Next菜单项。选择该菜单项,将激活下一个未船坞化的窗口。
(7)Previous菜单项。选择该菜单项,将激活上一个未船坞化的窗口。
(8)Cascade菜单项。该菜单项用于在屏幕上重新排放当前所有打开的窗口,就像放置一叠卡片一样。这样,用户就可以很容易地查看打开窗口的数目以及相应的文件名。这种排列窗口方法的缺点是只能看到最顶层窗口的内容。
(9)Tile Horizontally菜单项。选择该菜单项将使当前所有打开的窗口在屏幕上横向平铺。每个打开的窗口都具有同样的形状和大小。这种排列窗口方法的优点是可以同时浏览所有打开窗口的内容,缺点是如果打开的窗口过多,那么每个窗口就会太小。
(10)Tile Vertically菜单项。选择该菜单项将使当前所有打开的窗口在屏幕上纵向平铺。
(11)打开窗口的历史记录。在Tile Vertically项下面列出了最近打开的窗口的文件名,单击某个文件名即可显示相应的窗口。
(12)Windows菜单项。选择该项将打开Windows对话框,从中可以管理刚打开的窗口。
9.Help菜单
通过选择Help菜单可以弹出Visual C++ 6.0 的帮助窗口MSDN(Microsoft Develper Network),如图1-42所示。它应用HTML Help技术,使得查询帮助与编写代码可以同时进行,可以一边编程一边查询帮助,效率得到极大提高。
![058e55bdfbb36dd6d16e2c778f2af5cdaa9f4c1a](https://i-blog.csdnimg.cn/blog_migrate/0d9b157452badca29daf2c35517e678d.png)
图1-42 MSDN帮助窗口
选择Help菜单的Contents、Search或Index项均可以激活MSDN窗口。另外,在源代码编辑窗口中,选定对象(把鼠标指针置于其上)后按F2键,亦能启动MSDN窗口。
1.2.3 工具栏
Windows应用程序一般都提供了工具栏,工具栏是由一些形象化的位图按钮组成,一般都对应于菜单命令,以便方便、快捷地使用Visual C++集成开发环境的常用功能。
集成开发环境的工具栏以停靠窗口的形式出现,工具栏的位置可以通过鼠标拖曳的方法改变,并可以根据需要进行显示或隐藏的切换。一般的方法是选择Tools→Customize命令,打开Customize对话框,然后选择Toolbars选项卡,并根据需要进行选择,如图1-43所示。
![362296a4ba4549ae521c0019094f9b5b762785eb](https://i-blog.csdnimg.cn/blog_migrate/5df4e8c947adb8e7ccc623f40ca3f3ca.png)
图1-43 设置工具栏
用户也可以在菜单栏或工具栏的空白处右击,然后在弹出的快捷菜单中选择要显示或隐藏的工具栏,如图1-44所示。
![be3d0bae9a76573a18cc8d0bd621712d5cffcadb](https://i-blog.csdnimg.cn/blog_migrate/2bbccec7dfac9136412194de0751c957.png)
图1-44 显示或隐藏工具栏
Visual C++ 6.0集成开发环境的工具栏有很多个,下面简要讲解几个经常用到的。
1.Standard工具栏
Standard工具栏包括一些与文件和编辑有关的常用操作命令,其中按钮的功能与File、Edit和View等主菜单中某个菜单项对应,如图1-45所示。
![00f0ad79063ead5ba011f1c9fd0a959bae2a7538](https://i-blog.csdnimg.cn/blog_migrate/e221f48c8fa5314f92c4acd543bfca7c.png)
图1-45 Standard工具栏
在Visual C++ 6.0集成开发环境中,Standard工具栏中按钮的基本功能如下。
New Text File:创建新的文本文件。
Open:打开一个现有的文件。
Save:保存当前的文件。
Save All:保存所有打开的文件。
Cut:剪切选定的内容。
Copy:复制选定的内容。
Past:粘贴。
Undo:撤销上一次的操作。
Redo:恢复被撤销的编辑操作。
Workspace:显示或隐藏工作区窗口。
Output:显示或隐藏输出窗口。
Window List:显示当前已经打开的窗口。
Find In Files:在多个文件中查找指定的字符串。
Find:在当前文件中查找指定的字符串。
Search:打开MSDN。
2.Build MiniBar工具栏
Build MiniBar工具栏也包括项目的选择、编译、链接和调试等操作命令,如图1-46所示。
![2a30fdeb57fd1e92381b260cbfd77e42b18c91d3](https://i-blog.csdnimg.cn/blog_migrate/41c4848c2c0068ee1830f18966195a01.png)
图1-46 Build MiniBar工具栏
Build MiniBar工具栏的基本功能如下。
Compile:编译程序。
Build:编译、链接并生成应用程序。
Stop Build:终止应用程序的编译或链接。
Execute Program:运行应用程序。
Go:开始或继续调试程序。
Insert/Remove Breakpoint:在程序中插入或取消断点。
3.WizardBar工具栏
在默认情况下,Visual C++ 6.0集成开发环境中将显示WizardBar工具栏,它是对Visual C++ IDE中特色功能的快捷操作,如图1-47所示。
![e70bd525c7c9bbb2cace210f452bba2026fe882e](https://i-blog.csdnimg.cn/blog_migrate/7b9acdf420300dfd9fb5dcb4f7c277d0.png)
图1-47 WizardBar工具栏
使用WizardBar工具栏使类和成员函数的操作更加方便,单击WizardBar工具栏中的按钮即可实现多项功能。WizardBar工具栏具有上下文跟踪功能,能动态跟踪源代码的当前位置,并显示当前项目中的相关信息。当用户在源代码编辑窗口中进行编辑时,WizardBar工具栏将显示当前鼠标指针处的类或成员函数。当前鼠标指针指向函数定义以外的区域时,WizardBar工具栏的Member列表框变灰。当用户编辑对话框时,WizardBar工具栏将跟踪鼠标指针所选择的对话框或对话框控件。
1.2.4 项目与项目工作区
Developer Studio以项目工作区(Project Workspace)的方式来组织文件、项目和项目配置,项目工作区记录了一个项目的集成开发环境的设置,通过项目工作区窗口可以查看和访问项目中的所有元素。
项目工作区用项目工作区文件DSW(Developer Studio Workspace File)来描述,文件后缀名为.dsw。工作区文件保存了应用程序集成开发环境的项目设置信息,它将一个DSP项目文件与具体的Developer Studio结合在一起,在Visual C++集成开发环境中,一般以打开工作区文件DSW的方式来打开指定的项目。
创建项目后,用户可以通过项目工作区Workspace窗口来查看项目中的组成元素,如图1-48所示。Workspace窗口一般由ClassView、ResourceView、FileView这3个页面组成。这些页面按照一定的逻辑关系将一个项目分成几个部分,以树形结构显示项目所创建的类、资源和文件。用户可以方便地使用3个页面标签在不同视图之间进行切换,通过它们查看项目中所有的类、资源和文件。
![63c1ab95ac27044a4d0b8b8c223bfe8a24386305](https://i-blog.csdnimg.cn/blog_migrate/b04878d1ea1add5c60820e8833e80b7a.png)
图1-48 工作区窗口
下面介绍3个页面视图的结构与作用。
1.类视图
类视图(ClassView)用于显示项目中定义的C++类,如图1-49所示。扩展顶层文件夹可以显示类,扩展类可以显示该类的成员。通过类视图,可以定义新类、直接跳转到代码(如类定义、函数或方法定义等)、创建函数或方法声明等。
![edade0b1e5a1f4e30747469edfff9e6eae60ab89](https://i-blog.csdnimg.cn/blog_migrate/8f66afefba77ab8d65fb57349adb6e43.png)
图1-49 类视图
2.资源视图
资源视图(ResourceView)用于显示项目中包含的资源文件。扩展顶层文件夹可以显示资源类型,扩展资源类型可以显示其下的资源,如图1-50所示。
![61e0e9fa124acab107c6b3104260e7a056428caf](https://i-blog.csdnimg.cn/blog_migrate/dd93553b1531255838a7634253096bf2.png)
图1-50 资源视图
3.文件视图
文件视图(FileView)显示项目之间的关系以及包含在项目工作区中的文件。扩展顶层文件夹可以显示包含在项目中的文件,如图1-51所示。
![623e2e397f64d8784b81f01cb4d861ee5cc7b312](https://i-blog.csdnimg.cn/blog_migrate/6a6e048fb7e8808d6ef234aee60a8b28.png)
图1-51 文件视图
1.2.5 编辑器窗口
程序代码由操作码和数据组成,除了一般数据,一个Windows应用程序还大量使用被称为资源的数据。Visual C++ 6.0作为可视化的程序开发工具,提供了功能强大的源代码编辑器和各种类型的资源编辑器。
1.源代码编辑器
Visual C++的源代码编辑器可用于编辑很多类型的文件,如C/C++头文件、C++源文件、Text文本文件和HTML文件等。当打开或建立上述类型的文件时,该编辑器自动打开。Visual C++ 6.0的源代码编辑器除了具有一般的编辑功能,如复制、查找和替换等,还具有方便编程的特色功能,如编辑C++源程序时,在编辑窗口中将根据C++语法对不同的语句元素以不同的颜色显示,并进行合适长度的自动缩进。
源代码编辑器还具有自动提示功能,当用户输入源程序代码时,编辑器会显示对应类的成员函数和变量,如图1-52所示。用户可以在成员列表中选择需要的成员,这减少了输入的工作量,也避免了手工输入出错的可能。当输入函数用语句时,编辑器会自动提示函数的参数个数和类型。用户还可将鼠标指针指向变量、函数或类,此时编辑器将给出对应的变量类型、函数声明或类的信息。
![99a7b5a69ed0a39d7c34486cfa7b32b789a1310c](https://i-blog.csdnimg.cn/blog_migrate/ab374bd9440150e4d89bf2f7985497df.png)
图1-52 源代码编辑器的自动提示功能
2.资源编辑器
在Windows环境下,资源是独立于程序源代码的,作为一种界面成分,资源可以从源代码中获取信息,并在其中执行某种动作。Visual C++ 6.0可以处理的资源有快捷键(Accelerator)、位图(Bitmap)、光标(Cursor)、对话框(Dialog Box)、图标(Icon)、菜单(Menu)、串表(StringTable)、工具栏(Toolbar)和版本信息(Version In formation)等。由于不同的资源具有不同的特点,因此,Visual C++ 6.0提供了不同的资源编辑器和资源属性对话框。使用资源编辑器,可以创建新的资源、修改已有的资源、复制已有的资源,以及删除不需要的资源等。
3.工具栏编辑器
工具栏通常由多个工具按钮组成,通过工具按钮可以快速执行使用最频繁的命令。系统将每个工具栏保存为相应的位图,其中包括工具栏上每个工具按钮的图像。工具按钮的图像具有相同的尺寸,默认为16像素×16像素。工具按钮的图像在位图中依次排列,这种排列次序表明了屏幕上显示时工具按钮在工具栏上的排列次序。每个工具按钮都有相应的状态和风格(如被按下的、无效的、不确定的等)。
工具栏编辑器用于创建工具栏资源并可以将已有位图转换为工具栏资源。工具栏编辑器以图形方式显示要处理的工具栏及正被选择的工具栏按钮图像。图1-53是打开某一工具栏后的工具栏编辑器。
![492c4ec72afe95c13a06877d9a863a1e7d0bb9eb](https://i-blog.csdnimg.cn/blog_migrate/966559c61379ae2319a7c73848cecc9b.png)
图1-53 工具栏编辑器
创建新的工具栏有两种方法:一是直接创建,另一种是将已有的位图转换为工具栏。如果要直接创建,则选择Insert→Resource命令,在弹出的Insert Resource对话框中选择Toolbar项,然后单击New按钮进入工具栏编辑器后直接编辑。将已有位图转换为工具栏的方法如下。
(1)在图形编辑器中打开已有的位图资源。
(2)选择Image→Toolbar Editor命令,弹出New Toolbar Resource对话框,在该对话框中设置与位图匹配的图标图像的高度和宽度。然后单击OK按钮进入工具栏编辑器。
(3)完成转换后,选择Edit→Properties命令,从弹出的属性对话框中设置工具栏按钮的命令ID。创建工具栏资源后,可以使用Class Wizard 将工具栏按钮与源代码连接。
4.快捷键编辑器
使用快捷键编辑器可以添加、删除、更改和浏览项目所用到的快捷键,可以查看和更改与快捷键表中每个条目有关的资源标识符(资源标识符用于在程序代码中引用快捷键表中的每个条目),还可以为每个菜单选项定义快捷键。图1-54是打开某一快捷键表资源后的快捷键编辑器。
![6c0b80733a824e588d2a39395cc848242bfad86b](https://i-blog.csdnimg.cn/blog_migrate/deae0fe08d6924349c2cbcf06a25d09e.png)
图1-54 快捷键表资源
如果要在快捷键表中添加新的快捷键,选中表尾的新项方框,在此输入快捷键名,弹出Accel Properties对话框,如图1-55所示。在Key文本框输入键名,在ID文本框输入加速键标识符。
![743d8bdbcc29e53df391375373e4f54c79c4f061](https://i-blog.csdnimg.cn/blog_migrate/e1eebff6d108771a56cd838d728df9bf.png)
图1-55 Accel Properties对话框
5.串表编辑器
串表也是一种Windows资源,包含了应用程序用到的所有串的ID号、值和标题,例如,状态栏提示可以放在串表中。每个应用程序只能有一个串表,串表中的串以16个为一组构成段或块,某一串属于哪一段取决于该串的标识符值。例如,标识符值为0~15的串放在第一段,标识符值为16~32的串放在第二段等。图1-56为打开某一应用程序的串表资源后的串表编辑器。
![da797265011d83e836c232c309939caabb9f28d1](https://i-blog.csdnimg.cn/blog_migrate/b1bd275f7b0fc4e30adc79dcc6b73b6a.png)
图1-56 串编辑器
在串表编辑器中,串表中的每个段用水平线分开。如果要在串表中添加新的串,在要添加串的串段中,选择新项方框,在此输入串标识符,弹出String Properties对话框,如图1-57所示。在ID文本框输入串标识符和值,在Caption文本框输入串标题。
![8761eb78892e7e54f211db1a501b22602e0921a3](https://i-blog.csdnimg.cn/blog_migrate/3ae76133056d40f5b1d69d6b5392e7e5.png)
图1-57 String Properties对话框
6.版本信息编辑器
版本信息主要由公司名称、产品标识、产品版本号、版权和商标注册等信息组成。尽管版本信息不是应用程序必须的,但它是标识应用程序的有效手段。每个应用程序只能有一个版本信息资源。版本信息编辑器是用于编辑和维护版本信息的工具,如图1-58所示,是打开某一应用程序的版本信息资源后的版本信息编辑器。
![d41b73c6c4b2f4680cb20434817bee2afab4a4d6](https://i-blog.csdnimg.cn/blog_migrate/66f3f157d843cfd76ebb072dfd0f4501.png)
图1-58 版本信息编辑器