VC图象编程基础(略)

上传人:平*** 文档编号:46222634 上传时间:2018-06-24 格式:PPT 页数:84 大小:2.13MB
返回 下载 相关 举报
VC图象编程基础(略)_第1页
第1页 / 共84页
VC图象编程基础(略)_第2页
第2页 / 共84页
VC图象编程基础(略)_第3页
第3页 / 共84页
VC图象编程基础(略)_第4页
第4页 / 共84页
VC图象编程基础(略)_第5页
第5页 / 共84页
点击查看更多>>
资源描述

《VC图象编程基础(略)》由会员分享,可在线阅读,更多相关《VC图象编程基础(略)(84页珍藏版)》请在金锄头文库上搜索。

1、第三章 VC图像编程基础 第三章 VC图像编程基础 3.1 VC+可视化编程3.2 ImageLoad.dll动态链接库 3.3 设计CDibObject类 3.4 使用CDibObject类 3.5 CDibObject类应用实例 第三章 VC图像编程基础 3.1 VC+可视化编程 3.1.1 概述VC+是Microsoft公司推出的开发Win 32应用程序(Windows 95/98/2000/XP/NT)的面向对象的可视化集成工具。随着VC+所提供的Microsoft基础类库(Microsoft Foundation Class Library, 简写为MFC), 对Windows 95

2、/NT所用的Win 32应用程序接口(Win 32 Application Programming InterfaceAPI)进行了彻底的封装,从而可以使用完全的面向对象的方法来进行Win 32应用程序的开发,这样大大缩短了应用程序开发周期, 降低了开发成本,也将程序员从大量的复杂劳动中解放出来。 第三章 VC图像编程基础 VC+ Developer Studio包含有编写程序源代码的文本编辑器、设计用户界面(菜单、对话框、 图标等)的资源编辑器、 建立项目配置的项目管理器、 检查程序错误的集成调试器等工具, 同时它还提供了功能强大的应用程序向导工具AppWizard和类向导工具ClassWi

3、zard。AppWizard用于生成各种不同类型的具有Windows界面风格的应用程序的基本框架,在生成应用程序框架后,使用ClassWizard便可轻松完成创建新类、定义消息处理函数、重载虚拟函数等操作。 第三章 VC图像编程基础 3.1.2 用户界面 图3-1 VC+ 6.0用户界面 第三章 VC图像编程基础 VC+ 6.0提供有多种不同用途的菜单命令和工具按钮,多数菜单和工具按钮是人们熟悉的标准Windows菜单和工具铵钮。用VC+ 6.0开发应用程序主要涉及三大类型的文件: 文件(Files)、 项目(Projects)和工作区(Workspaces)。在VC+ 6.0中, 通常意义下

4、开发一个Windows应用程序是指生成一个项目,该项目包含着一组相关的文件, 如各种头文件(.h)、 实现文件(.cpp)、 资源文件(.rc)、 图标文件(.ico)、 位图文件(.bmp)等, 而该项目必须在一个工作区打开。所以,当第一次建立一个应用程序时,应选择新建一个项目,此时VC+6.0自动建立一个工作区,并把新建的项目在该工作区中打开, 以后要对该项目进行修改、补充、 增加等工作,只要打开对应的工作区即可。 第三章 VC图像编程基础 VC+ 6.0以项目工作区(Project Workspace)的方式来组织文件、项目和项目配置,通过项目工作区窗口可以查看和访问项目中的所有元素。首

5、次创建项目工作区时, 要创建一个项目工作区目录、一个项目工作区文件、 一个项目文件和一个工作区选项文件。项目工作区文件用于描述工作区及其内容,扩展名为.dsw。项目文件用于记录项目中各种文件的名字和位置, 扩展名为.dsp。工作区选项文件用于存储项目工作区设置, 扩展名为.opt。 第三章 VC图像编程基础 创建或者打开项目工作区时, VC+ 6.0将在项目工作区窗口中显示与项目有关的信息。项目工作区窗口主要由三个面板构成, 即FileView、 ResouceView和ClassView,分别用于显示项目中定义的C+类、资源文件和包含在项目工作区中的文件。每个面板用于指定项目工作区中所有项目

6、的不同视图, 视图中每个文件夹可以包含其他文件夹或各种元素(如,子项目、文件、 资源、类和标题等)。通过项目工作区窗口可以定位到项目中的任一位置,以对其进行相应的编辑(源程序、资源等)第三章 VC图像编程基础 编辑区窗口打开文本编辑器和资源编辑器。文本编辑器的使用与Word非常类似,通过它可方便的进行程序源代码的输入、 编辑和修改工作。在资源编辑器中可进行各种资源的编辑工作, 如对话框、图标、菜单、位图等,从而直观地设计程序的用户界面。输出窗口用于显示项目建立过程中所产生的错误信息、 调试过程中的输出信息等,用它可以方便地定位到工程中的错误位置, 观察到程序调试过程中的输出结果。 第三章 VC

7、图像编程基础 3.1.3 框架和文档视结构基于MFC的应用程序框架(Application Framework)是定义 了程序结构的MFC类库中类的集合,它是VC+编程的骨架。运 用MFC应用程序框架具有如下优点: (1)标准化的程序结构和用户接口:这对具有标准用户界面 的Win 32程序来说,可以极大地减轻程序员的负担,使程序员不必过多地考虑界面,而把主要精力放在程序设计上,以提高程序 设计的效率。(2) 框架产生的程序代码短,运行速度快,具有很大的灵 活性。(3) MFC封装了Win 32 SDK中的几乎所有的函数, 能够实 现Win 32系统的任何功能。 第三章 VC图像编程基础 MFC

8、框架的核心是文档视结构(Document-View Architecture)。简单地说,文档视结构就是将数据和对数据的观察相分离, 文档仅处理数据的读、写等操作,视则是显示和处理数据的窗口,视可以操作文档中的数据。MFC框架的基本结构包括应用程序对象、主框架窗口、文档、视等,框架通过命令和消息将它们结合在一起,共同对用户的操作做出响应。应用程序的对象类由CWinApp派生,一个应用程序有且仅有一个应用程序对象,它负责应用程序实例的初始化和进程结束时的资源清除,以及创建和管理应用程序所支持的所有文档模板的工作。第三章 VC图像编程基础 主框架窗口是应用程序的主窗口。MFC框架定义了两种基本的主

9、框架窗口类,即单文档接口SDI(Single Document Interface)主框架窗口类和多文档接口MDI(Multiple Document Interface)主框架窗口类。对于SDI,视是主框架窗口的子窗口;对于MDI,必须从CMDIChildWnd派生出主框架窗口的子窗口,视是该子窗口的子窗口。 第三章 VC图像编程基础 文档类由CDocument类派生,文档是一个应用程序数据元素的集合,它构成应用程序所使用的数据单元,另外,它还提供了管理和维护数据的手段。文档是一种数据源,数据源有很多种, 最常见的是磁盘文件,但它不一定是一个磁盘文件,文档的数据 源也可以来自串行口、网络或摄

10、像机输入信号等。视类从CView或其子类(CEditView、CFormView、CRecordView、 CScrollView 等)派生,是数据的用户窗口,为用户提供了文档可视的数据显示,它将文档的部分或全部内容显示在窗口中。视还给用户提供了一个与文档中的数据进行交互的界面,它把用户的输入转化为对文档中数据的操作。每个文档都会有一个或多个视显示,一个视既可以输出到屏幕窗口中,也可以输出到打印机上。第三章 VC图像编程基础 图3-2 MFC应用程序框架结构 (a) SDI框架结构; (b) MDI框架结构 第三章 VC图像编程基础 文档视结构大大简化了多数应用程序的设计开发过程。它带来的好处

11、主要有: (1) 将数据操作和数据显示、 用户界面分离。这是一种“分而治之”的思想, 这种思想使得模块划分更加合理、 模块独立性更强,同时也简化了数据操作和数据显示、用户界面设计工作。文档只负责数据管理,不涉及用户界面;视只负责数据输出与用户界面的交互,可以不考虑应用程序的数据是如何组织的,甚至当文档中的数据结构发生变化时也不必改动视的代码。 第三章 VC图像编程基础 (2) MFC在文档视结构中提供了许多标准操作界面,包括新建文件、 打开文件、 保存文件、打印等,减轻了用户的工作量。用户不必再编写这些重复的代码,从而可以把更多的精力放到编写应用程序特定功能的代码上(主要是从数据源中读取数据和

12、显示)。第三章 VC图像编程基础 (3)支持打印和打印预览,用户无需编写代码或只需要编写很少的代码,就可以为应用程序提供打印和打印预览功能。同样的功能如果自己写的话, 需要数千行代码。由于文档视结构功能强大,因此一般用VC+进行程序设计时都首先使用AppWizard 生成基于文档视结构的单文档或多文档应用程序框架,然后在其中添加自己需要的代码,完成应用程序的特定功能。 第三章 VC图像编程基础 3.1.4 编程基本流程VC+的资源编辑器能以所见即所得(What you see is what you get)的形式直接编辑应用程序用户界面,为所有资源分配ID标识号。ClassWizard能把对

13、话框模板与自动生成的类定义或与已有的类代码连接起来, 为菜单项、 控件等资源生成空的处理函数模板,创建消息映射函数模板,并将资源ID与处理函数联接起来。通过使用AppWizard,程序员的编程工作便简化为用资源编辑器直观地设计界面,完善对话框类代码。在空的处理函数模板处填写响应用户操作的代码,是一种完善的可视化编程方法。 第三章 VC图像编程基础 用VC+进行Win 32可视化编程的基本流程如下: (l) 生成框架: 运行AppWizard, 并按需要指定生成应用程序的选项,指定框架中视类的基类(CView、 CEditView、 CFormView、 CScrollView、 CTreeVi

14、ew等)。AppWizard将按指定的选项生成应用程序框架和相关的文件,包括项目(project)的工作空间(workspace)文件和源文件,主要是应用程序(application)、 文档(document)、 视(view)和主框窗口(main frame)的C+代码文件(*.cpp, *.h文件),以及缺省包含标准界面接口的资源文件(*.rc)。 第三章 VC图像编程基础 (2) 设计用户界面: 利用VC+资源编辑器编辑资源文件, 设计菜单、对话框、工具条、字符串、加速键、位图、图标、 光标等项目资源。(3) 联接界面和代码:利用ClassWizard把资源文件中定义的界面资源标识ID

15、(如菜单项、工具条和对话框中的控件等)在指定的源文件中映射成相应的函数模板。(4)编写、修改函数代码:利用ClassWizard可以方便地在源代码编辑器(source code editor)中跳转到指定的函数代码处。 第三章 VC图像编程基础 (5) 根据需要创建新类和编写代码: 用ClassWizard创建新类, 并生成相应的源文件。如新类是对话框类, 可先用资源编辑器生成对话框模板, 然后用ClassWizard创建对话框类代码,并与模板联接,编写新类相关的源代码。(6)实现文档类:在AppWizard生成的框架基础上设计文档数据的数据结构,在文档类中增加相应的成员变量和成员函数, 实现

16、对数据的操作和文档与数据的接口。 第三章 VC图像编程基础 (7) 实现框架中标准的文件操作命令,即Open、Save和Save As命令:框架已完成标准的文件操作命令的所有接口,程序员要做的仅仅是编写文档类的串行化(Serialize())成员函数。(8) 实现视类: 框架已构造好了文档与视的关系, 视能方便地访问文档中的public数据成员,可根据文档的需要构造一个或多个视类。通过ClassWizard把视的用户接口资源映射成函数模板,并编写函数代码。 第三章 VC图像编程基础 (9) 如需要,增加分割窗口(splitter window): 在SDI的主框窗口类或MDI的子窗口类中添加一个CSplitterWnd对象, 并在窗口类的OnCreateClient成员函数中对CSplitterWnd对象进行创建和初始化。如果用户分割了一个

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号