| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 编程开发 > Visual C++教程 > 文章正文 用户登录
如何开发网站市场
网站运营与开发的
网站运营与开发的
Flash Remoting -
如何开发基于ASP的
《Flash ActionSc
Flash V2组件开发
ASP.NET中实现Fla
flash8与java
RIA 开发感想

开发集成Microsoft Visual Basic for Application的应用系统(一)           

开发集成Microsoft Visual Basic for Application的应用系统(一)

作者:佚名 来源:CSDN 作者: sunhui 更新:2006-8-25 21:05:35 错误报告 我要投稿

开发集成Microsoft Visual Basic for Application的应用系统(一)

 

          Microsoft Visual Basic for Application(以下简记为VBA)是Microsoft Office的核心组件之一,作为一个嵌入式二次开发引擎,VBA被集成到许多著名的大型软件系统之中(例如:AutoCAD 2002、Core Draw等),集成VBA的一个重要原因是类似Microsoft Office类型的商业软件取得巨大的成功,一个众所周知的事实是Word, Excel,PowerPoint,以及其他Office程序共享一个公共的二次开发环境,即VBA。本文介绍VBA集成的基本概念,在后续的文章中将陆续介绍如何在你的应用程序中集成VBA的基本技术。

          Microsoft VBA建立在COM技术基础之上,如果你打算让你的应用系统支持宏语言或描述语言,以便你的客户可以充分定制化你的应用系统,或可以进行深度的二次开发,集成VBA是一种聪明的选择,通过集成VBA,你的系统可以与Microsoft Office共享同一个二次开发环境。VBA在语言级别上等价于VB 6.0,在运行机制上,VBA是以伪代码(Microsoft P-Code)形式运行,VB6可以编译为机器码(依赖于VB运行时库),除编译的差别外,二者最大的差异是所支持的Form库,VBA的Form来自Fm20.dll,本质上这类Form是一种特殊类型的ActiveDesigner(一种类似于VB6集成的报表设计器类型的可编程对象)。

 

(集成在用户系统中的VBA环境)

          VBA的基本想法是,将程序对象映射为对应的VBA对象,基本的VBA对象有以下几种:

1、          VBA工程:在集成VBA的应用系统中,VBA工程有两个重要角色,一、VBA工程是VBA可编程对象的容器(所有可编程对象的集合),二、VBA工程是实现VBA对象存储的基础。

2、          VBA可编程项:是一个特定程序对象在VBA环境中的对应对象,首先这类对象必须是一个COM对象(必须支持事件),其次这个对象必须完成特定的程序功能。例如:你可以将一个特定的MFC对象实现为一个VBA可编程项,如第一图中Normal工程中的的TestView。可编程项仅有一个运行时事例。

3、          VBA可编程类:是一个特定程序对象在VBA环境中的对应对象,首先这类对象必须是一个COM对象(必须支持事件),其次这个对象必须完成特定的程序功能。例如:你可以将一个特定的MFC多文档子窗口对象实现为一个VBA可编程类,可编程项可以有多个运行时事例。

4、          VBA可编程控件:VBA可编程项的子对象。

5、          ActiveDesigner:一种特殊的VBA工程项,可以有可是化的设计机制,一个典型的例子是VBA中的Form,下图显示一个用户开发的ActiveDesigner:

(用户设计的基于MFC的Designer对象)

(ActiveDesigner在编程环境中的应用)

 

VBA对象结构图如下:

 

一个集成VBA系统的应用程序:

(未完待续,如果你有兴趣在你的系统中集成VBA技术,请与本人联系,我的e-mail:  sunhuizlz@yeah.net)

文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。