• 沒有找到結果。

Visual C++ & Android程序设计综合实训(第二版) - 万水书苑-出版资源网

N/A
N/A
Protected

Academic year: 2021

Share "Visual C++ & Android程序设计综合实训(第二版) - 万水书苑-出版资源网"

Copied!
13
0
0

加載中.... (立即查看全文)

全文

(1)

本章介绍了 Visual C++ 6.0 集成开发环境的界面以及本书开发的应用实例的项目需求。

实训 1.1    Visual C++ 6.0 集成开发环境

随着计算机多媒体技术的发展, 可视化编程已成为当今程序设计的主流, 而 Visual C++  是可视化编程语言中的佼佼者。Visual  C++系列是微软公司在多年不断改进的基础上推出 的一组功能强大的开发工具,其最主要的技术特点是可视化编程环境和支持面向对象的编 程技术。  Visual C++ 6.0 的开发环境 Developer Studio 包括文本编辑器、 资源编辑器、 项目建立工具、 优化编译器、增量连接器、源代码浏览器和集成调试器等。 在 Visual C++ 6.0 中,主要使用向导(Wizard)、Microsoft  基本类库(Microsoft Foundation  Class Library,MFC)和活动模板库(Active Template Library,ATL)来开发应用程序。  Visual C++ 6.0 的各种向导能帮助用户在数秒内生成可运行的 Windows 应用程序的外壳, 帮助用户生成各种不同类型的应用程序的基本框架。 创建完应用程序的基本框架后, 可以使用 

ClassWizard 来创建新类 (Class), 定义消息处理函数 (Message Handler), 覆盖虚拟函数 (Virtual  Function),从对话框(Dialog Box)的空间中获取数据并验证数据的合法性等。 对于以 Visual C++ 6.0 进行 Windows 编程为主题的内容是很广泛的, 本书将应用具体的实 例,一步步来学习其方方面面的功能。总的来说,这些实例涉及到菜单的制作、工具栏和状态 栏的添加、对话框和控件的设计、数据库的开发以及文件的读写和打印,其中穿插着绘图方面 的应用,尽可能地利用到该软件的各种控件和功能,以期使读者得到更加全面的提高。本书实 例的重点是基于 Windows 系统下进行的基础编程、数据库开发、多线程应用和文件读写,相信 读者在认真读完本书后在这些方面会有较大的提高。当然作为实例,尽管它涉及的方面很多, 但在其他方面本书也将进行详尽的介绍。下面就开始进入 Visual C++ 6.0 的神奇世界! 从 Windows 的启动菜单上找到并执行 Microsoft Visual C++ 6.0,可以启动 Visual C++ 6.0。  Visual C++ 6.0 启动后,便可进入 Microsoft Developer Studio 开发环境,如图 1­1 所示。  Developer  Studio 由标题栏、菜单栏、工具栏、项目工作区窗口、客户区编辑窗口、输出 窗口和状态栏组成。它们的作用如下: l 标题栏:用于显示应用程序名和打开的文件名。 l 菜单栏:完成 Developer Studio 中的所有功能。 l 工具栏:对应某些菜单项或命令的功能,简化用户操作。 l 项目工作区窗口:用于组织文件、项目和项目配置。 l 客户区编辑窗口:用于编辑程序源代码。 l 输出窗口:用于显示项目建立过程中所产生的错误信息。 l 状态栏:给出当前操作或所选择的命令的提示信息。

(2)

图 1­1    Microsoft Developer Studio 开发环境  Visual C++ 6.0 开发界面的菜单栏包含了 Visual C++ 6.0 的绝大部分功能,因此用户可 以通过选取各个菜单项执行各种操作。在一般情况下,Visual C++ 6.0 开发界面的主菜单如 图 1­2 所示。 图 1­2    Visual C++ 6.0 的标准菜单 下面简要介绍一下菜单项的功能,通过了解这些菜单项,用户可以对 Visual C++ 6.0 所拥 有的功能有一个大致的了解。  1. “文件”菜单(File  菜单) “文件”菜单如图 1­3 所示。 图 1­3    Visual C++ 6.0 的“文件”菜单 第一部分的 3 个菜单项 New、Open、Close 用来对各种类型的文件进行操作,包括项目文 件、源程序文件和资源文件。

(3)

第二部分用于对工作区进行操作。注意,因为 Visual C++一次只能打开一个工作区,所以 如果使用 Open Workspace 打开一个工作区, 原来打开的工作区将被关闭。 此外, Save Workspace  只是保存本工作区的设置信息,并不保存源程序文件。 第三部分 Save、Save As、Save All 用于对当前正编辑的文件进行保存。  Page Setup 和 Print 两个选项用来打印文件。  Recent Files 和 Recent Workspaces 可以重新打开最近打开的文件或工作区。  Exit 用于退出 Visual C++集成界面。  2. “编辑”菜单(Edit 菜单) “编辑”菜单如图 1­4 所示。 图 1­4    Visual C++ 6.0 的“编辑”菜单 “编辑”菜单包含了用户需要的大部分编辑操作,随着当前正在编辑的文件类型不同, 这个菜单所具有的菜单项也会随之不同。最下面的 4 项是 Visual  C++  6.0 新增加的功能:List  Members  项可以自动列出一个对象的所有成员;Type  Info  项可以显示出一个变量的类型;  Parameter Info 项可以显示出一个函数的参数个数和每个参数的类型; Complete Word 项可以帮 助用户自动拼写一个单词。有了这 4 项功能可以大大减少查找 API 帮助文件的次数,还可以 减少拼写错误,提高编程效率。  3. “查看”菜单(View 菜单) “查看”菜单如图 1­5 所示。 通过“查看”菜单,用户可以显示或隐藏一些窗口。单击  ClassWizard  项可以调出  ClassWizard 对话框;单击 Resource  Symbols 项将调出 Resource  Symbols 对话框,这个对话框 是用来管理资源 ID 的使用的。通过这个对话框可以浏览所有的资源 ID,增加新的 ID,改变 已有 ID 的值,删除未使用的 ID 等;Full Screen 项用于隐藏主菜单、各种工具栏和状态栏,把 工作区区域调整到全屏幕。 

Workspace 和 Output 项分别用于改变工作区窗口和输出窗口的显示状态;Debug Windows  子菜单控制各种调试窗口的显示状态,这些菜单项只有在调试程序期间才能使用。

(4)

4. “插入”菜单(Insert 菜单) “插入”菜单如图 1­6 所示。

图 1­5    Visual C++ 6.0 的“查看”菜单 图 1­6    Visual C++ 6.0 的“插入”菜单 

New Class 可以帮助用户创建一个新类,不过这个类最好不是 MFC 类,如果是 MFC 类, 应该用  ClassWizard  创建;New  Form  可以创建一个新的对话框资源和一个基于该资源并从  CDialog 类派生的新类;单击菜单项 Resource,出现 Insert  Resource 对话框,在这个对话框中 可以新建一个资源或者从文件中导入一个资源;File  As  Text 可以把一个文件插入到当前正在 编辑的文件中;New ATL Object 可以在一个项目中增加 ATL(ActiveX Template)对象。 

5. “项目管理”菜单(Project  菜单) “项目管理”菜单如图 1­7 所示。 

Set Active Project 是一个子菜单,标记的是当前活动的项目;Add To Project 子菜单的最后 一项是  Components  and  Controls,选择后将启动一个叫组件廊(Components  and  Controls  Gallery) 的对话框, 利用它可以为项目增加新的 Visual Studio 组件和 ActiveX 控件; Insert Project  into Workspace 可以把一个 Project(.dsp 文件)及其相关文件加入到当前的 Workspace 中。 

6. “编译执行”菜单(Build 菜单) “编译执行”菜单如图 1­8 所示。

图 1­7    Visual C++ 6.0 的“项目管理”菜单 图 1­8    Visual C++ 6.0 的 Build  菜单

用户可以通过使用  Build  菜单来编译一个文件或者编译整个项目、执行程序或者启动 调试器。Compile 项编译的对象是一个 CPP 文件或 C 文件;Build 项将当前需要编译的文件链

(5)

接成可执行文件或其他最终模块(DLL 或 OCX);Rebuild All 项将删除全部临时文件,重新编 译所有源程序;Profile 项用来进行程序优化,但这个菜单项只有当用户在项目设置中已经选中  Enable profiling(选择 Projects|Settings…,单击 Link 标签,在 Enable profiling 选项前打勾, 如图 1­9 所示)复选框,并且重新编译过项目时才能打开 Profile 对话框。 图 1­9  为工程项目设置 Enable profiling  7. “工具”菜单(Tool 菜单) “工具”菜单如图 1­10 所示。 “工具”菜单分成四部分。第一部分是关于 Source Browser 的。使用 Source Browser 可以 方便地查看本项目中各个标识符的出现位置、 函数的调用关系等。 第二部分是 Visual Studio 6.0  的部分实用工具。第三部分的两个菜单项中,Customize 调出定制对话框,可以让用户自定义 菜单和工具栏,增加/删除菜单项或工具栏按钮,改变快捷键,还可以设置本菜单第二部分中 的实用工具;Options 主要用来设置编辑器的样式,通用的 Include 目录和 Lib 目录等。第四部 分是管理宏用的。  8. “窗口”菜单(Window  菜单) “窗口”菜单如图 1­11 所示。 图 1­10    Visual C++ 6.0 的“工具”菜单 图 1­11    Visual C++ 6.0 的“窗口”菜单

(6)

Cascade 项以层叠方式排列全部编辑窗口; Tile Horizontally 项横向平铺全部编辑窗口; Tile  Vertically  项纵向平铺全部编辑窗口;Next  项激活下一个编辑窗口,Previous  项激活上一个编 辑窗口,这两个功能在打开很多个编辑窗口时特别有用;Docking  View  项用来改变一个窗口 的显示方式,只适用于工作区窗口、输出窗口等可以相互依靠的窗口,不能用在编辑窗口上。  9. “帮助”菜单(Help 菜单) “帮助”菜单如图 1­12 所示。 图 1­12    Visual C++ 6.0 的“帮助”菜单  Contents 项在 MSDN 中列出帮助的目录,如图 1­13 所示。 图 1­13    MSDN 窗口

实训 1.2    Visual C++ 6.0 工程及其文件构成

现在的应用程序,尤其是 Windows 应用程序,一般都由多个文件组成,包括源程序文件、 头文件、资源文件等,所以有必要引入工程的概念。将一个应用程序作为一个工程,用工程化 管理,使组成应用程序的所有文件形成一个有机的整体。工程包含用户打开、编译、连接和调 试应用程序时所需的所有文件,这些文件可以产生一些程序或二进制文件。下面详细介绍

(7)

Visual C++中这些不同类型的文件分别所起的作用,在此基础上对 Visual C++如何管理应用程 序所用到的各种文件有一个全面的认识。 首先要介绍的是扩展名为.dsw  的文件类型,这种类型的文件在  Visual  C++中是级别最高 的,称为 Workspace 文件。在创建一个工程工作空间时,系统会产生一个工程文件。此文件用 来存储位于工作空间一级的信息,包括:源文件清单、编译选择、连接选择、路径选择及系统 需求等设置。 在 Visual  C++中,应用程序是以 Project 的形式存在的,Project 文件以.dsp 为扩展名,在  Workspace 文件中可以包含多个 Project,由 Workspace 文件对它们进行统一的协调和管理。 与.dsw 类型的 Workspace 文件相配合的一个重要文件类型是以.opt 为扩展名的文件, 这个 文件中包含的是在 Workspace 文件中要用到的本地计算机的有关配置信息, 所以这个文件不能 在不同的计算机上共享。 当打开一个 Workspace 文件时, 如果系统找不到需要的.opt 类型文件, 就会自动创建一个与之配合的包含本地计算机信息的.opt 文件。 上面提到 Project 文件的扩展名是.dsp, 这个文件中存放的是一个特定的工程, 也就是特定 的应用程序的有关信息,每个工程都对应一个.dsp 类型的文件。 以.clw 为扩展名的文件是用来存放应用程序中用到的类和资源信息的, 这些文件是 Visual  C++中的 ClassWizard 工具管理和使用类的信息来源。 对应每个应用程序有一个 readme.txt 文件, 这个文件中列出应用程序用到的所有文件的信 息,打开并查看其中的内容就可以对应用程序的文件结构有一个基本的认识。 在应用程序中大量应用的是以.h 和.cpp 为扩展名的文件, 其中以.h 为扩展名的文件称为头 文件,以.cpp 为扩展名的文件称为实现文件。一般说来,以.h 为扩展名的文件与以.cpp 为扩展 名的文件是一一对应配合使用的。在以.h  为扩展名的文件中包含的主要是类的定义,而在 以.cpp 为扩展名的文件中包含的主要是类成员函数的实现代码。 在应用程序中经常要使用一些位图、菜单之类的资源,  Visual C++中以.rc 为扩展名的文件称为资源文件, 其中包含 了应用程序中用到的所有  Windows  资源,需要指出的一点 是,.rc 文件可以直接在 Visual  C++集成环境中以可视化的 方法进行编辑和修改。 以.ico、.bmp 等为扩展名的文件是具体的资源,产生这 种资源的途径有很多。使用.rc  资源文件的目的就是为了对 程序中应用到的大量资源进行统一的管理。 在创建好一个工作空间后, 工程工作空间窗口包含了一 组标签面板,如图 1­14 所示。 单击  FileView  标签,可以查看到用户已创建的工程。 扩展其中的文件夹可以显示工程中的所有文件: l  Source Files:源文件 l  Header Files:头文件 l  Resource Files:资源文件 l  Readme.txt:文本文件

如图 1­15 所示的是 New 对话框的 Files 选项卡,通过 Files 选项卡可以创建多种类型的文件: 图 1­14  工程工作空间窗口

(8)

图 1­15    New 对话框的 Files 选项卡 l  Active Server Page:活动服务器页文件 l  Binary File:二进制文件 l  Bitmap File:位图文件 l  C/C++ Header File:C 或 C++头文件 l  C++ Source File:C++源文件 l  Cursor File:光标文件 l  HTML Page:HTML 超文本文件 l  Icon File:图标文件 l  Macro File:宏文件 l  SQL Script File:SQL 脚本文件 l  Resource Script:资源脚本文件 l  Resource Template:资源模板文件 l  Text File:文本文件 打开 New 对话框的 Projects 选项卡,可以看到用户能够创建的工程有: l  ATL COM AppWizard:ATL 应用程序 l  Cluster Resource Type Wizard:资源动态链接库及超级扩展动态链接库 l  Custom AppWizard:自定义 AppWizard  l  Database Project:数据库工程 l  DevStudio Add­in Wizard:自动化宏 l  Extended Stored Proc Wizard:用于访问 SQL Server 的动态链接库 l  ISAPI Extension Wizard:Internet 服务器或过滤器 l  Makefile:Make 文件 l  MFC ActiveX ControlWizard:ActiveX 控件程序 l  MFC AppWizard(dll):MFC 动态链接库 选项卡 标签

(9)

l  MFC AppWizard(exe):MFC 应用程序 l  New Database Wizard:SQL 数据库服务器 l  Utility Project:空白实用工程 l  Win32 Application:Win32 应用程序 l  Win32 Dynamic­Link Library:Win32 动态链接库 l  Win32 Console Application:Win32 控制台应用程序 l  Win32 Static Library:Win32 静态库

实训 1.3  生物电波应用程序框架简介

在本实训中,将创建一个生物电波应用程序。这个应用程序的编写主要是针对医院的 一些生物电波采集仪器,并结合现代医学、生理学原理与临床应用的实际需要设计的。医 生在生物电波采集设备的帮助下,通过计算机上简单的操作界面,对患者身体某部位的生 物电波进行采样,进而对得到的数据进行分析和测量。其中数据采集部分的数据是利用随 机函数产生的。 启动生物电波应用程序后,得到如图 1­16 所示的简洁的操作界面。 图 1­16  应用实例的界面 “病历操作”菜单中包括: l 新建病历:在进行采样操作前,必须先进行该项操作。单击“病历操作”|“新建病 历”菜单项,在显示窗口中会立即弹出“添加病历”对话框,如图 1­17 所示。 l 打开病历:打开原病历记录。单击菜单栏中“病历操作”|“打开病历”菜单项,在显 示窗口中会立即弹出病历窗口, 其操作同 Windows 下的文件打开相同, 如图 1­18 所示。

(10)

图 1­17  “添加病历”对话框 图 1­18  打开病历

选择文件后会弹出“病历资料”对话框,如图 1­19 所示,用以确认打开的文件是否正确。

图 1­19  病历资料确认

l 病历管理:用于对各种病历资料的管理和波形文件的删除,如图 1­20 所示。

(11)

“波形显示”菜单中包括: l 数据采集:单击菜单栏中“波形显示”|“数据采集”菜单项进入实时采样,如图  1­21 所示。单击“开始”按钮,数据采集开始;单击“停止”按钮,数据采集停止; 单击“保存”按钮,弹出消息框显示采集点数(如图 1­22 所示),等出现保存完毕的 消息对话框后(如图 1­23 所示),表示采集的数据已保存;单击“退出”按钮,退出 数据采集窗口。 图 1­21  数据采集窗口 图 1­22  显示采集点数 图 1­23  保存完毕 l 波形选段:单击菜单栏中“波形显示”|“波形选段”菜单项,进入“波形选段”对 话框,如图 1­24 所示,单击确定起点,右击确定终点。 图 1­24  “波形选段”对话框

(12)

选段完成后会弹出“选段确认”对话框,如图 1­25 所示,注意最多允许选 5 段。 图 1­25  “选段确认”对话框 l 波形测量:单击菜单栏中“波形显示”|“波形测量”菜单项,进入如图 1­26 所示的 “波形测量”对话框。 图 1­26  “波形测量”对话框 鼠标拖动选择区域,放大后测量波形数据,如图 1­27 所示。 图 1­27  测量波形数据

(13)

“系统管理”菜单中包括“数字滤波”子菜单,打开该子菜单,出现如图 1­28 所示的“数 字滤波”对话框。 图 1­28  “数字滤波”对话框 “退出系统”菜单中包括: l 退出系统:正常退出生物电波分析工作系统。 l 关于生物电波分析仪:介绍有关应用程序的版本信息。 从下一章开始,我们就来介绍如何创建这个应用程序。

參考文獻

相關文件

雇主申請招募第2類外國 人文件效期、申請程序及 其他經中央主管機關規定 之文件(以下稱第2類外國

七、提醒貴公司依「多國多中心藥品臨床詴 驗計畫審查程序」 ,如計畫內容變更,應檢

二、提醒貴公司依「多國多中心藥品臨床詴 驗計畫審查程序」 ,如計畫內容變更,應檢附

二、提醒貴公司依「多國多中心藥品臨床試 驗計畫審查程序」 ,如計畫內容變更,應檢附

• 後段工程是從由矽晶圓切割成一個一個的晶片 入手,進行裝片、固定、接合連接、注模成 形、引出接腳、按印檢查等工序,完成作為元

4.支出憑證如有遺失或供其他用途者,應檢附與原本相符之影本,或其他

各块报告模板包括所谓的模板对象, 或对象, 每个被分配到某一 SpecManager 项目(光谱, 表格, 化学结构...) 或其它项目(文本标签)

(1)如果說有部是第二結集後由上座部所分出,則其戒條次第 應接近五分律