All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
C++利用AppWizard 为FDraw 生成应用程序框架[二]

Writer: qq Article type: Programming skills(编程技巧) Time: 2014/7/9 22:36:06 Browse times: 310 Comment times: 0

C++利用AppWizard 为FDraw 生成应用程序框架[二]


Head photo

Go homepage
Upload pictures
Write articles

C/C++利用AppWizard 为FDraw 生成应用程序框架[二]

C/C++利用AppWizard 为FDraw 生成应用程序框架[二]
AppWizard 提供了多种应用程序框架的生成功能。通过一系列的交互对话框,根据需要定制多种选项,并生成一组可编译、运行的源代码文件,简称“应用程序框架”。由于应用程序框架已经生成了许多基础的、必需的功能,这就使得后续的基于此框架的应用开发变得规范、方便。
运行效果
由 AppWizard 生成的FDraw 应用程序框架的运行结果如图4.6 所示。其文档窗口是空白的,原因是还没有添加任何应用程序的特定代码。

图4.6 由AppWizard 生成的Fdraw 应用程序框架的运行效果此应用程序框架已经实现的主要功能如下。
(1) 菜单。AppWizard 产生的菜单具有基本的Windows 操作系统功能。
① 文件(File)菜单中有:新建(New)、打开(Open)、关闭(Close)、保存(Save)、另存为(Save As)、打印(Print)、打印预览(Print Preview)、打印设置(Print Setup)、发送(Send)、最近文件和退出(Exit)命令,以及对应的快捷键。
② 编辑(Edit)菜单中有:撤销(Undo)、剪切(Cut)、复制(Copy)和粘贴(Paste)命令,以及对应的快捷键。
③ 查看(View)菜单中有:工具栏(Toolbar)和状态栏(Stats Bar)命令。
④ 窗口(Window)菜单中有:新建窗口(New Window)、层叠(Cascade)、平铺(Title)和排列图标(Arrange Icons)命令。
⑤ 帮助(Help)菜单中有:Help Topics 和About Fdraw 命令。
(2) 工具栏。其中有新建、打开中、保存、剪切、复制、粘贴、打印、关于帮助和帮助按钮。它们都具有相应的提示,即将鼠标指向相应的工具图标时,显示相应的功能提示。
(3) MAPI 支持被完全实现。文件菜单中的发送(Send)命令不需要用户编写额外的代码就可以工作 (这条命令以及MAPI 常规的支持,只有在用户拥有电子邮件系统时才可以使用)。
(4) Context-Sensitive Help 的实现。在帮助菜单中的Help Topics 命令是对Context-Sensitive Help 的支持,在这里添加相应内容,即可实现。
2.FDraw 应用程序框架的生成步骤
使用 AppWizard 生成FDraw 应用程序框架的具体步骤如下。
(1) 在File 菜单中选择New 命令或按Ctrl+N 组合键,弹出New 对话框。
(2) 单击Projects 标签,在Projects 项目类型列表中选中MFC AppWizard (exe)选项。
(3) 在Project name 文本框中输入项目名称FDraw,使Visual C++将其赋予新项目以及该项目所在的项目工作区。
(4) 在Location 文本框中输入项目FDraw 存放的文件夹路径,如“D:OOP 与GUI 的Visual C++实现第4 章基于GUI 的Visual C++实现FDraw4.2 基于MFC 的应用程序框架生成(FDraw Step 0)”,如果不存在,Developer Studio 会自动生成该项目文件夹,也可以采用默认路径,或者单击Browse 按钮…,选择相应路径中的文件夹,如图4.7 所示。
在 Platforms 列表中选中Win32 复选框。如果用户的Microsoft Developer Studio 安装包括其他语言包,则它们由复选框代表而作为潜在的平台。
(5) 单击OK 按钮,AppWiZard 会在指定路经下创建文件夹FDraw。工作区文件和项目开发环境的参数文件都基于此名称,分别是FDraw.dsw 和FDraw.Opt,并弹出如图4.7 所示的New 对话框。

图4.7 New 对话框
(6) 在MFC AppWizard – Step 1 对话框中,采用默认的Multiple documents(多文档),单击Next 按钮,显示MFC AppWizard-Step1 对话框,如图4.8 所示。
Single document:单文档;
Dialog based:基于对话框;
Document/View architecture support:对文档-视图结构的支持,默认为支持,如果不选择此项,则程序中磁盘文件的打开、保存以及文档和视图的相互作用等功能需要用户来实现。
(7) 在MFC AppWizard-Step1 对话框中,采用默认设置None,单击Next 按钮,弹出MFC AppWizard-Step 2 of 6 对话框,如图4.9 所示。

图4.8 MFC AppWizard-Step1 对话框

图4.9 MFC AppWizard-Step 2 of 6 对话框
(8) 在MFC AppWiZard-Step 2 of 6 对话框中,采用默认None,单击Next 按钮,弹出MFC AppWizard-Step 3of 6 对话框,如图4.10 所示。

图4.10 MFC AppWizard-Step 3 of 6 对话框
(9) 在MFC AppWiZard-Step 3 of 6 对话框中,采用默认设置,单击Next 按钮,弹出MFC AppWizard-Step 4 of 6 对话框,如图4.11 所示。

图4.11 MFC AppWizard-Step 4 of 6 对话框
(10) 在MFC AppWiZard-Step 4 of 6 对话框中,选中MAPI(消息API)复选框。MAPI 支持只在用户有电子邮件系统时有效。同时,为了使FDraw 具有Help 功能,要将Context-Sensitive Help 复选框选中。其他为默认选项,AppWizard 生成支持下列功能的代码:
① 一个可固定的工具栏;
② 一个状态栏;
③ 打印和打印预览;
④ 3D 控件。
(11) 单击Advanced 按钮,弹出Advanced Options 对话框,如图4.12 所示,其中的Document Template Strings 为默认的标签。.

图4.12 Advanced Options 对话框
Doc type name 文本框中输入的字符串是新文档的默认名称。第一个新文档名称为FDraw1,第二个为FDraw2,依此类推。
File extension 文本框中输入不带逗点“.”的默认文件扩展名,如scb。输入默认文件扩展名后,应用程序向导自动将文件扩展名说明输入到Filter name 文本框中。AppWizard 为用户保存FDraw 时,将自动为文件名加上扩展名.scb。如果用户不指定扩展名,那么当保存文件时,就必须确定自己的文件扩展名。这就是Open 或Save As 对话框的File of Type 或Save as Type 下拉列表框中将显示的字符串。如果需要,可以对其进行编辑。
(12) 单击Close 按钮,关闭Advanced Options 对话框。
(13) 在MFC AppWiZard-Step 4 of 6 对话框中,单击Next 按钮,弹出MFC AppWiZard-Step 5 of 6 对话框,如图4.13 所示。

图4.13 MFC AppWiZard-Step 5 of 6 对话框
(14) 在MFC AppWiZard-Step 5 of 6 中,单击Next 按钮,弹出MFC AppWiZard-Step 6 of 6对话框,如图4.14 所示,包括视图类、执行文件、主框架、子框架、文档和头文件。

图4.14 MFC AppWizard-Step 6 of 6 对话框
(15) 在MFC AppWiZard-Step 6 of 6 对话框中,单击Finish 按钮,弹出New Project lnformation 对话框,如图4.15 所示。它总结了AppWizard 为用户生成项目时用户所确立的设置和功能。用户可检查AppWizard 自动提供的应用程序类型、类以及各项功能。

图4.15 New Project Information 对话框
(16) 单击New Project lnformation 对话框中的OK 按钮,AppWizard 就会生成所有必需的文件并打开该项目,如图4.16 所示。

图4.16 项目FDraw 的集成环境
(17) 单击工具栏中的“!”按钮,运行FDraw 项目,编译链接成功后,运行后效果如图 4.17 所示。

图 4.17 工具栏快捷菜单
知识点:
(1) CObject 是MFC 的根类,绝大多数MFC 类是由其派生的,包括CcmdTarget 类。Cobject类包括动态类信息、动态创建、对象序列化、对程序调试的支持等。所有从CObject 类派生的类都将具备或者可以具备Cobject 类所拥有的特性。CcmdTarget 类通过封装一些属性和方法,提供了消息处理的架构。在MFC 中,任何可以处理消息的类都从CcmdTarget 类派生。
(2) MFC 封装了Win32 API、OLE API、ODBC API 等底层函数的功能,并提供更高一层的接口,从而简化了Windows 编程。同时,MFC 支持对底层API 的直接调用。附录D 给出了MFC 的层次结构图。





There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.