1、2.1 Visual C+可视化集成开发环境Visual C+提供了一个支持可视化编程的集成开发环境:Visual Studio(又名 Developer Studio)。Developer Studio是一个通用的应用程序集成开发环境,它不仅支持 Visual C+,还支持 Visual Basic,Visual J+,Visual InterDev等 Microsoft系列开发工具。Developer Studio 包含了一个文本编辑器、资源编辑器、工程编译工具、一个增量连接器、源代码浏览器、集成调试工具,以及一套联机文档。使用 Developer Studio,可以完成创建、调试、修改应
2、用程序等的各种操作。Developer Studio采用标准的多窗口 Windows用户界面,并增加了一些新特性,使得开发环境更易于使用,用户很容易学会它的使用方法。一个典型的 Developer Studio用户界面如图 2.1所示。图 2.1 Developer Studio用户界面由于 Developer Studio是一个可视化的开发工具,在介绍 Developer Studio的各个组成部分之前,首先了解一下可视化编程的概念。可视化技术是当前发展迅速并引人注目的技术之一,它的特点是把原来抽象的数字、表格、功能逻辑等用直观的图形、图象的形式表现出来。可视化编程是它的重要应用之一。所谓可
3、视化编程,就是指:在软件开发过程中,用直观的具有一定含义的图标按钮、图形化的对象取代原来手工的抽象的编辑、运行、浏览操作,软件开发过程表现为鼠标点击按钮和拖放图形化的对象以及指定对象的属性、行为的过程。这种可视化的编程方法易学易用,而且大大提高了工作效率。Visual C+的集成开发环境 Developer Studio提供了大量的实用工具以支持可视化编程特性,它们包括:项目工作区、ClassWizard、AppWizard、WizardBar、Component Gallery 等。下面我们将对它们作逐一介绍:2.1.1 项目工作区项目工作区是 Developer Studio的一个最重要的
4、组成部分,程序员的大部分工作都在 Developer Studio中完成。Developer Studio 使用项目工作区来组织项目、元素以及项目信息在屏幕上出现的方式。在一个项目工作区中,可以处理:一个工程和它所包含的文件一个工程的子工程多个相互独立的工程多个相互依赖的工程一个项目工作区可包含由不同的开发工具包生成的工程,如 Visual C+和 Visual J+。在桌面上,项目工作区以窗口方式组织项目、文件和项目设置。项目工作区窗口一般位于屏幕左侧,如图 2.2所示。项目工作区窗口底部有一组标签,用于从不同的角度(视图)察看项目中包含的工程和联机文档。每个项目视图都有一个相应的文件夹,包
5、含了关于该项目的各种元素。展开该文件夹可以显示该视图方式下工作区的详细信息。项目工作区包含四种视图:FileView(文件视图):显示所创建的工程。展开文件夹可以察看工程中所包含的文件。ClassView(类视图):显示项目中定义的 C+类,展开文件夹显示工程中所定义的所有类,展开类可察看类的数据成员和成员函数以及全局变量、函数和类型定义。ResourceView(资源视图):显示项目中所包含的资源文件。展开文件夹可显示所有的资源类型。InfoView(文档视图):显示联机文档目录表。展开目录表可以显示所有的帮助主题,双击主题将弹出InfoViewer Topic窗口,显示关于该主题的详细信息
6、。要显示关于源程序窗口的关键字的相关信息,可以将光标移动到该关键字上,然后按下 F1键。还可以使用 InfoViewer显示来自 Internet WWW(万维网)的页面。单击项目工作区底部的标签可以从一个视图切换到另一个视图。每个视图都是按层次方式组织的。可以展开文件夹和其中的项察看其内容,或折叠起来察看其组织结构。在项目视图中,如果一项不可以再展开,那么它是可编辑的。双击这一项便可以打开相应的文档编辑器进行编辑:对类和源程序文件来说,是打开文本编辑器,对于对话框来说是打开对话框编辑器等。每个视图还支持右键快捷菜单。使用文件视图(FileView)FileView窗格显示了工程文件和项目工作
7、区中所包含的文件的逻辑关系。一个工作区可以包含多个工程,其中活动工程以黑体显示。活动配置决定了编译活动工程时的编译选项。活动工程是使用 Build或Rebuild All时要编译的那一个工程。可以用 Build菜单上的 Set Active Configuration选择不同的活动配置;也可以在 Project菜单上用 Set Active Project选择不同的活动工程。使用 FileView可以:察看文件;管理文件:包括增加、删除、移动、重命名、拷贝文件等。要增加一个文件到过程中,可以选择 Project-Add to Project-Files菜单,弹出文件对话框,选择相应文件即可;要
8、从工程中删除一个文件,可打开工程文件夹,选择相应文件,然后按 DEL键。使用类视图(ClassView)ClassView显示所有已定义的类以及这些类中的数据成员、成员变量。Visual C+自动从项目工作区中所包含的源程序文件中分离出类。在 ClassView中,文件夹代表工程文件名。展开 ClassView顶层的文件夹后,显示工程中所包含的所有的类,如图 2.3。双击一个类的图标(或单击图标旁的+号)时,ClassView 展开该类并显示其类成员。图 2.3 类视图ClassView使用图标标识类、类成员和工程中的其他项,图 2.4显示了所有的图标和含义:图 2.4 类视图中图标的含义利用
9、 ClassView不仅可以浏览应用程序所包含的类以及类中的成员,还可以快速跳到一个类或成员的定义,步骤如下:1.选择要查找的定义或声明的符号2.双击所选的符号名。要打开关于某一个类声明的头文件,只需双击类名即可。要想查找某一个变量的参考:1.将光标定位在该符号处2.按鼠标右键,弹出快捷菜单,选择 Reference(此时应确保已经生成了 Browse(浏览)文件,关于 Browse文件的选项,可以在 Project -Settings中设置)。2.1.2 AppWizard(应用程序向导)AppWizard是 Visual C+提供的一个高级编程工具,它可以产生应用的 C+源代码框架。通过与
10、另一个工具 ClassWizard一起配合使用,可大大节省开发应用程序的时间和精力。AppWizard是一个标准的 C+源代码生成器。它通过一系列的对话框来提示用户输入所需创建的程序的信息,如它的名字和位置。用户还可以指定它是否具有一些特性,如多文档接口或工具条,对数据库、OLE的支持等。然后 AppWizard生成一些文件,这些文件构成程序的框架。由 AppWizard生成的程序是一个基本的 Windows程序,用户可以编译并运行它实际什么也不做。它只是准备好增加那些为程序提供功能性的资源和代码。这样就节省了用户设计应用程序框架的时间和精力,用户所要做的工作只是直接往框架中添加自己的处理代码
11、。2.1.3 ClassWizard(类向导)ClassWizard是一个交互式工具,用来建立新的类,定制类,把消息映射成类成员函数,或者把控制框映射为类变量成员。在开发程序时,可用 ClassWizard建立程序所需要的类,包括消息处理和消息映射例程(用于定位处理消息的代码)。使用 ClassWizard,可以将成员函数或变量加入到一个类中,或修改已经存在的函数和变量。Wizard 使函数或变量放在何处,如何称呼它们以及其他一些细节问题大大简化。ClassWizard所能识别的类必须在 ClassView数据库文件(.CLW)中登记。使用 ClassWizard可以:创建新类:从许多框架基类
12、中派生出新类映射消息到函数新建、删除消息处理函数察看已被处理的消息并跳到消息处理代码处定义成员变量:这些变量会被自动初始化,释放,执行对话框数据检验等创建新类时,自动加入方法和属性处理现有的类和类库在后续章节中,我们将举例说明 AppWizard和 ClassWizard这两个工具的用法。2.1.4 WizardBar(向导工具条)WizardBar是一个可停泊的工具条,用于快速访问一些 Developer Studio最实用的功能,比如ClassWizard或 ClassView的一些功能。WizardBar 会自动跟踪用户程序的上下文比如,当文本编辑器中的光标从一个函数移动到另一个函数时,
13、Wizard 的显示会自动更新。WizardBar工具条包含了三个相关的下拉列表框:类(Class)、过滤器(Filter)和成员(Member),如图 2.5所示。类列表框包含了应用程序定义的所有类。当前所选择的类决定可用的过滤器;所选的过滤器决定 Member列表中显示的内容。选择 Member中的一项,可以跳到相应的成员定义。WizardBar 最右边是一个 Action Control,单击 Action Control 的向下箭头符号会弹出一个菜单,用于执行跳到函数定义、增加消息处理函数等操作。图 2.5 WizardBarWizardBar使得处理类、成员和资源更加方便。使用 Wi
14、zardBar,可以:增加一个新类建立一个新的函数或方法跳到一个已存在的函数或方法2.1.5 Componet Gallery(组件画廊)Componet Gallery是一个组件库,它保存着以后可以共享和重用的代码。这些代码包括由 Visual C+自带的组件和从用户工程中增加到 Gallery中去的用户自定义组件。可以使用 Gallery提供的组件增强用户编写的应用程序的功能。Visual C+提供了一组应用程序的常用组件,分为两类:Developer Studio Components 和 Register ActiveX Controls。其中 Developer Studio Com
15、ponents包含了我们经常使用的一些标准的 Windows应用程序特性,比如:弹出菜单,剪贴板,对话条,启动画面(Splash Window),定制状态条(带时间显示),日积月累对话框等。Register ActiveX controls则用于往程序里添加 ActiveX控件。增加组件到应用程序中组件总是加入到活动工程中。要增加组件到工程中,可以从 Project菜单选取 Add to Project-Components and Controls。将弹出一个对话框,选择相应的组件,回答一系列问题后,Component Gallery 将自动在你的工程文件总加入该组件的 CPP、H 文件以及
16、资源,并自动修改你的源程序,插入必要的代码。无需编程,即可增加一些常用功能,如启动画面。有关使用 Componet Gallery的例子,可参见第三课有关“弹出菜单”一节。2.1.6 Developer Studio的一些快捷特性为了使开发环境更易于使用,Developer Studio 还提供了一些快捷特性,包括:右键菜单、快速访问常用对话框、属性对话框、键盘快捷键等。右键菜单(快捷菜单)在 Developer Studio的许多窗口中,可以在一个选中的对象或窗口背景上单击鼠标右键弹出快捷菜单。快捷菜单包含了与当前区域或所选项相关的一组常用命令。大多数命令都可以从菜单条上访问,但用快捷菜单更
17、加方便。快速访问常用对话框:在列表出现的窗口中,通常可以通过双击列表中的一项显示与该项相关的常用对话框。比如,要编辑字符串列表中的一项,可以双击它,弹出字符串编辑对话框,用于编辑双击的那一项。属性对话框选择一个项,单击右键,从快捷菜单上选择 Properties,就显示出关于该对象的属性对话框。属性对话框显示在一个属性页中,可能包含许多标签。弹出属性对话框的快捷键是 Alt+Enter。点一下对话框左上角的图钉按钮,可以把该属性对话框固定在所有窗口前面。如果有可编辑的属性,就可以在属性页中直接修改。下图是修改某个编辑框属性的一个例子。图 2.6 属性对话框键盘快捷键键盘快捷键为那些喜欢键盘而不
18、喜欢用鼠标的用户提供了执行某一功能的替代方式。Developer Studio为一些常用的命令分配了缺省得快捷键。用户可以自定义快捷键。为了高效的使用 Developer Studio,建议读者记住以下一些常用的快捷键:打开文件 File Open CTRL+O 打开一个已有的文件保存文件 File Save CTRL+S 保存活动文档编辑复制 Edit Copy CTRL+C编辑剪切 Edit Cut CTRL+T编辑粘贴 Edit Paste CTRL+V编辑查找 Edit Find CTRL+F编辑取消 Edit Undo CTRL+Z下一条错误 F4上一条错误 SHIFT+F4下一个窗
19、口 CTRL+F6对象属性 ALT+ENTER建立可执行文件 Build F7运行 Execute CTRL+F5建议为 View-Full Screen,Help-Search 增加自定义的快捷键。要自定义快捷键,可以选择 Tools-Customize菜单来实现。 2.2 创建、组织文件、工程和工作区项目工作区是一个包含用户的所有相关项目和配置的实体。工程定义为一个配置和一组文件,用以生成最终的程序或二进制文件。一个项目工作区可以包含多个工程,这些工程既可以是同一类型的工程,也可以是由不同类型的工程(如 Visual C+和 Visual J+工程)。工作区现在以.dsw 为后缀名(以前为
20、.mdp),项目文件现在以.dsp(以前为.mak)为后缀名。Developer Studio提供了一个简单的对话框,用以创建项目工作区、工程、文件和其他文档。在创建工程时,可以指定一个新的项目工作区来包含它;或把新工程加入到当前打开的工作区中。在创建一个文件时,可以同时把它加入到工程中,也可以将现存的文件、文档加入到工程中。2.2.1新建工程在新建一个工程时,可以把它加入到一个已有的项目工作区中,或同时创建一个新的项目工作区。如果加工程到一个已有的工作区中,则可以将该工程设为已有工程的子工程。提示:Developer Studio 以工程名字来区分工程,所以要求每一个新建的工程必需有一个独一
21、无二的名字,这样才能确保 Developer Studio的工作区可以包含位于不同位置的工程。要新建一个工程,可以:1.在 File菜单上,点 New,选择 Projects标签。2.从列表中选择项目类型3.点 Create New Workspace(新建工作区)或 Add to Current Workspace(加入到当前工作区中)4.要使新工程为子工程,可以选择 Dependency of 检查框,并从列表中选择一个工程。5.在 Project Name框中,输入新工程名,确保该名字必须与工作区中的别的工程名字不重名。6.在 Location框中,指定工程存放的目录:可以直接输入路径名
22、,也可以按旁边的 Browse按钮,浏览选择一个路径。7.点 Platform框中的相应检查框,指定工程的开发平台输入完以上内容并按 OK按钮后,根据所选的工程类型,会出现相应的 Wizard(向导)。通过一系列的对话框输入,快速生成工程的框架。2.2.2新建工作区可以在新建工程的同时指定创建一个新的工作区,工作区文件名同该工程,后缀名为.dsw。也可以创建一个空的(不含任何工程的)工作区。要创建一个空的工作区,可以:1. 在 File菜单上,点 New 2. 在随后弹出的对话框上,点 Workspace标签 3. 从类型列表中选择 Blank Workspace 4. 在 Workspace
23、 Name框中输入名字,注意名字不能通它将要包含的工程同名 5. 在 Location框中指定存放工作区文件的目录 6. 按 OK。 2.2.3增加已有文件到工程中打开包含目标工程的项目工作区文件在 Project菜单上,点 Add to Project,然后点 Files在 Insert Files into Project对话框中,浏览并定位要加入到工程中的文件名,然后选择它们。从 Insert Into中选择工程名字,然后点 OK。如果工作区已经打开,而且要加入的文件也已打开,那么只要在该文件的编辑器中点鼠标右键,从快捷菜单上选择 Add to Project,就可以把该文件加入到当前活
24、动工程中。2.2.4打开工作区选择 File- Open Workspace,指定要打开的工作区;或选择 File -Recent Workspaces ,从最近打开过的工作区列表中选择一个。2.2.5设置当前工程选择 Project Setting,可以为当前工程设置编译、链接、C/C+等各种选项。2.3 WIN32 开发Visual C+5.0是一个全 32位的软件开发工具,它完全支持 32位的 Win32平台开发。Win32 平台包括 32位的 Windows操作系统和软件开发系统 Win32 API。所谓 API(应用程序接口)指的是一组由操作系统提供的函数。Win32 API 是 W
25、indows平台上的一个 32位的软件开发系统,它使应用程序可以充分利用 32位Windows操作系统的能力。使用 Win32 API写成的应用程序可以在 Windows95或更高版本以及 Windows NT上运行。由于 Microsoft在 Windows 3.x及其 Win16 API上取得巨大的成功,因此,在研制 Win32 API时,首先考虑的就是保证 Win32与 Win16 API兼容,只有让软件开发者能将 Win16代码很容易移植到 Win32 API上,才有实际意义。Win32 API 在语法上只作了极小的改动,API 的命名与 Windows 的 Win16 API相同,语义也相同,消息序号也相同。事实上,完全可以保存独立的源代码,并选择编译成 16位的 Win16程序或 32位的 Win32程序。其次,如其名所示,在设计 Win32 API时考虑到了充分利用 32位处理器的能力。随着硬件的发展,内存和 CPU价格的降低和性能的提高,32 位 CPU的 486、Pentium 已成为主流。据有关数据显示,目前在我国