欢迎来到天天文库
浏览记录
ID:9290375
大小:510.00 KB
页数:17页
时间:2018-04-26
《autocad_vba二次开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第11章AutoCADVBA二次开发自从1986年AutoLISP作为第一个用于AutoCAD二次开发的编程语言被引入到AutoCAD中,从此许多计算机软件开发商和用户用AutoLISP编写了数以万计的实用系统和应用程序。还有大量的程序是利用AutoCAD的外部文件(Script)对AutoCAD进行二次开发。对AutoCAD来说这无疑是一笔巨大的资源和财富,也是其赖以发展的基础之一。11.1概述11.1.1AutoCAD中实现ActiveXAutoCADActiveX使用户能够从AutoCAD的内部或外部以编程方式来操作AutoCAD,它是通过将AutoCAD对象显示到“外
2、部世界”来做到这一点的。一旦这些对象被显示,许多不同的编程语言和环境以及其他应用程序(例如MicrosoftOffice中的WordVBA或ExcelVBA)就可以访问它们。在AutoCAD中实现ActiveX接口有两大优点:(1)更多的编程环境可以编程访问AutoCAD图形。在ActiveXAutomation出现以前,开发人员只能使用AutoLISP或C++接口。(2)与其他Windows应用程序(例如MicrosoftOffice中的Excel和Word)共享数据变得更加容易。对象是所有ActiveX应用程序的主要构造块,每一个显示的对象均精确代表一个AutoCAD组件
3、,AutoCADActiveX接口中有许多不同类型的对象。例如,直线、圆弧、文字和标注等图形对象是对象;线型与标注样式等样式设置是对象;图层、编组和块等组织结构是对象;视图与视口等图形显示是对象;甚至图形、AutoCAD应用程序本身也是对象。11.1.2AutoCAD中的VBAVBA为VisualBasicforApplication的缩写。AutoCAD中的VBA是指必须依赖于已有的AutoCAD应用程序才能运行的VisualBasic程序。MicrosoftVBA是一个面向对象的编程环境,可提供类似VisualBasic(VB)的丰富开发功能。VBA和VB的主要差别是VB
4、A和AutoCAD在同一进程空间中运行,提供的是具有AutoCAD智能的、非常快速的编程环境。VBA也向其他支持VBA的应用程序提供应用程序集成,这就意味着AutoCAD(使用其他应用程序对象库)可以是如MicrosoftWord或Excel之类的其他应用程序的Automation控制程序。在AutoCAD中实现VBA有四大优点:(1)VisualBasic编程环境易于学习和使用。(2)VBA可与AutoCAD在同一进程空间中运行,这使程序执行得非常快。(3)对话框的构造快速而有效。这使开发人员可以构造原型应用程序并迅速收到设计的反馈。(4)工程可以是独立的,也可以嵌入到图形
5、中。这样就为开发人员提供了非常灵活的方式来发布他们的应用程序。新工程会被创建为未保存的全局工程。创建完成后,可以将它嵌入到图形中或保存到工程文件中。11.2VBA基础11.2.1VBA工程AutoCADVBA工程是由许多程序模块、类模块和窗体组成的集合,他们同时运行即可完成指定的功能。VBA工程可以保存于AutoCAD图形文件内部,称为内嵌VBA工程;亦可保存为独立的工程,称为全局VBA工程,以*.dvb文件格式保存。对于内嵌VBA工程,当打开包含该工程的AutoCAD图形文件时,它将被自动加载。因此,在运行内嵌VBA工程程序之前,其用户不须在文件夹中去寻找工程文件并加载该工
6、程,使得工程管理更加方便。全局VBA工程的功能较多。全局工程可在任何AutoCAD图形中运行,亦可在工程中打开或关闭AutoCAD图形。全局工程容易与其他用户共享,且可制作成共享的宏宏是一个可执行的应用子程序,每个VBA工程至少包含一个宏。16资源库,因此应用VBA开发通用应用程序时,应将其保存为全局工程。但全局工程也有一些缺点,它不会随AutoCAD图形文件的打开而自动加载。所以,用户在运行全局工程程序之前须要知道哪个工程文件中包含了所需的宏,然后加载该工程文件,最后才能执行相应的宏。11.2.2VBA管理器在当前AutoCAD进程中加载的所有VBA工程均可用VBA管理器来
7、管理,亦可用它来新建、保存、加载、卸载、嵌入或提取工程。“VBA管理器”对话框如图11.1所示。启动“VBA管理器”对话框的命令调用方法为:命令行:VBARUN菜单栏:【工具】→【宏】→【VBA管理器】与VBA应用程序开发、管理相关的下拉菜单如图11.2所示。图11.1“VBA管理器”对话框16图11.2与VBA应用程序开发、管理相关的下拉菜单1.创建新VBA工程创建新VBA工程的步骤如下:(1)打开“VBA管理器”对话框。(2)选择“新建”。新工程将以默认的名称“ACADProject”创建。如要更改
此文档下载收益归作者所有