好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

autocadvba开发教程.doc

239页
  • 卖家[上传人]:大米
  • 文档编号:517351076
  • 上传时间:2023-01-18
  • 文档格式:DOC
  • 文档大小:535KB
  • / 239 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第1章 走进AutoCAD ActiveX/VBA1.1 ActiveX 自动化在AutoCAD中的应用ActiveX是微软近年推出的一个基于COM(Component Object Model)的技术规范它是在OLE(Object Linked and Embedded)基础上发展的新技术,其宗旨是在Windows系统的统一管理下协调不同的应用程序,构成复合文档应用程序可以决定将自己哪些信息暴露出来,这个暴露自身信息的应用程序称为服务程序(Server);而操纵服务程序的程序称为客户程序(Client)所谓ActiveX部件(简称“部件”),是一段可重复使用的编程代码和数据,它由利用ActiveX Automation(自动化)技术创建的一个或多个对象所组成由于编写客户程序比将其做成服务程序要简单得多,因此要利用已有的ActiveX部件作为被调用的服务程序Autodesk公司采纳了微软的这一技术规范,最早在AutoCAD R14.0版推出了基于ActiveX Automation技术的开发方式随后就有AutoCAD R14.01版,该版支持“前期绑定”,并且内嵌了AutoCAD VBA 。

      到AutoCAD 2000/2002(属R15版)、AutoCAD 2004/2005/2006(属R16版)和AutoCAD 2007(属R17版),这种新型的开发方式得到了进一步的改进及完善AutoCAD ActiveX 使用户能够从 AutoCAD 的内部或外部以编程方式来操作 AutoCAD它是通过将 AutoCAD 对象显示到“外部世界”来做到这一点的一旦这些对象被“暴露”,许多不同的编程语言或其他应用程序(例如VB、C++、Java、Word VBA 或 Excel VBA等)就可以访问它们VB功能强大、语法简单、应用广泛,是良好的外部编程环境AutoCAD VBA是内嵌在AutoCAD内部的编程环境AutoCAD VBA 允许 VBA 环境与 AutoCAD 同时运行VBA 通过 AutoCAD ActiveX Automation 接口将消息发送到 AutoCAD,并通过 ActiveX Automation 接口对 AutoCAD 进行编程控制将AutoCAD 、ActiveX Automation 和 VBA/VB 相结合编程有三个基本要素第一个要素是 AutoCAD 本身,它拥有丰富的封装了的 AutoCAD 图元、数据和命令的对象集。

      AutoCAD 是一个具有多层接口的开放架构应用程序第二个要素是 AutoCAD ActiveX Automation 接口,它建立与 AutoCAD 对象的消息传递(通信)第三个要素是 VBA/VB 集成编程环境 (IDE),它具有自己的对象组、关键词和常量等,能提供程序流、控制、调试和执行等功能在AutoCAD 2000/2002中,几乎对外暴露了所有对象,包括图形对象(如直线、圆弧)、样式设置对象(如线型、文本样式)、组织结构对象(如图层)、图形显示对象(如视口)以及菜单和工具栏等到AutoCAD 2004/2005/2006版,又得到逐步的改进,如真彩色控制和表等1.2 AutoCAD VBA基础1.2.1概述VBA (Visual Basic for Applications)与VB(Visual Basic)一样也是一种面向对象的程序设计语言,它继承了VB语法简单功能强大的特点AutoCAD 2000/2002 VBA相当于VB5,而AutoCAD 2004/2005/2006 VBA相当于VB6,VB所支持的对象属性和方法,VBA也支持AutoCAD VBA 允许其Visual Basic环境与 AutoCAD 同时运行,并通过 ActiveX Automation 接口提供对 AutoCAD 的编程控制。

      这样就把 AutoCAD、ActiveX Automation和 VBA 紧密连结在一起,提供一个非常强大的接口它不仅能控制 AutoCAD 对象,也能向其他应用程序发送数据或从中提取数据在AutoCAD中与VBA应用程序开发有关的下拉菜单如图1-1所示图1-1与VBA应用程序开发有关的下拉菜单注:VBA 不支持创建可执行文件,但它提供了口令保护,以工程的方式保护工程窗体、类和模块的可见性用户可以在 VBA IDE 中选择菜单“工具(T)”|“ACAD Project属性(E)...”,在“ACAD Project- 工程属性”对话框的“保护”选项卡进行相应的操作VBA常用的工程术语有:(1)内嵌工程(embedded project):内嵌在AutoCAD图形中的VBA工程,打开图形时自动加载2)全局(通用)工程(global project):指独立存储在“.dvb”文件中的工程,需要先加载3)一般(规则)文档:未包含VBA内嵌工程的AutoCAD图形4)智能文档:包含一个或多个VBA内嵌工程的AutoCAD图形5)当前工程:VBA IDE中当前选定的工程6)宏:用户可直接执行的VBA通用子程序或函数。

      每一个VBA工程至少包含一个宏VBA工程可以包含的组件有对象、窗体、标准模块、类模块和引用下面对这些元素分别介绍:(1)ThisDrawing对象:代表当前(活动)的AutoCAD图形(文档)对于全局工程,它指AutoCAD中的当前(活动)文档;对于内嵌工程,指包含此工程的文档一般情况下,创建一个工程后,该工程只含有一个元素——ThisDrawing对象,其它部分要用户根据需要添加2)窗体:窗体是放置其它对象的容器,是基本的构造块用户可以通过它为应用程序创建自定义的对话框它可以包括事件过程、通用过程和变量的窗体级声明3)标准模块:标准模块也称作“代码模块”或简称为“模块” 它包含用户的常用过程和函数4)类模块:类模块创建具有属性和方法的用户自定义的对象5)引用:指能被应用程序使用的外部ActiveX部件或其它工程文件1.2.2 VBA工程及其管理当前AutoCAD进程中加载的所有VBA工程都可以用“VBA管理器”的对话框来管理可使用它创建、加载、卸载、保存、内嵌或提取VBA工程,还可查看有哪些工程内嵌在打开的图形中(如果有的话)可选择菜单“工具(T)”|“宏(A)”|“VBA管理器(V)...”或键入命令“VBAMAN”打开VBA管理器,如图1-2所示。

      图1-2 VBA管理器1.加载工程当需要加载已有的工程时,可应用菜单“工具”|“宏(A)”|“VBA管理器...”打开“VBA管理器”对话框,点击“加载(L)...”,按钮或选择菜单“工具”|“宏(A)”|“加载工程(L)...”打开 ”打开VBA工程” 对话框如图1-3所示图1-3 ”打开VBA工程” 对话框当选取工程将其加载到AutoCAD图形中时,此工程引用的其它工程也会被自动加载也可在命令提示行键入“VBALOAD”执行加载2.卸载工程在”VBA管理器”对话框中选择要卸载的工程,单击“卸载(U)”即可也可在命令提示行键入“VBAUNLOAD” 执行卸载3. 嵌入工程将工程嵌入到AutoCAD图形中,是指把全局工程的副本放到图形的数据库中,此后该工程就将随着图形的打开而加载,以及随着图形的关闭而卸载注意,一个图形只能嵌入一个内嵌工程欲将工程嵌入到AutoCAD图形中,应单击“VBA管理器”上的“嵌入(E)”按钮4.提取工程当单击“VBA管理器”上的“提取(X)”按钮时,就使该工程从所在的图形数据库中删除用户可将该工程另存到外部文件中,否则该工程的数据将会被删除5. 创建新工程要创建新的VBA工程,应单击“VBA管理器”上的“新建(N)”按钮。

      一个新建VBA工程的默认名称为ACADProject,若要变更工程的名称,应在VBA IDE集成开发环境中的工程属性栏中修改6. 命名工程和保存工程工程的名称是在VBA IDE的“属性”窗口中设定的,而保存全局工程的文件名(.dvb)应在“VBA管理器”中单击“另存为(S)...”按钮,在对话框的“文件名(N)”框内输入文件名(.dvb),文件名是存储工程文件的唯一标识对于一个已嵌入到图形中的工程,在保存图形文件时将一起被保存1.2.3 VBA 集成开发环境在AutoCAD中加载了工程后,就可以利用VBA集成开发环境(IDE)来编辑该工程的窗体、程序代码和引用等元素,也可以在VBA IDE中调试和运行工程1.打开VBA IDE可用以下三种方法打开VBA IDE:(1)在命令行中键入“VBAIDE”2)应用菜单“工具”|“宏(A)”|“Visual Basic编辑器(B)”3)直接按“Alt+F11”键打开的VBA IDE见图1-4图1-4打开的VBA IDE注:可以设定在每次打开AutoCAD时让系统自动启动VBA IDE,只需在acad.arx文件中增添一行代码“acadvba.arx”即可。

      2.工程信息可在VBA IDE 中的“工程”窗口查看所有已经加载的VBA工程并可查看这些工程中所包含的程序代码、类别、窗体及与工程相关的文件等3.工程的组成每个工程都是由不同元素构成的它可以包含AutoCAD图形、窗体、标准模块、类模块和引用4.添加新元素用户可以在工程中添加新元素,其方法是从“插入(I)”菜单选择相应的选项进行添加当新的元素添加到工程中以后,就会以默认的属性显示在“工程”窗口中5.导入已存在的元素用户可以将已存在的元素导入到当前的工程中可以导入的文件包括:窗体文件(.FRM)、标准模块文件(.BAS)、类模块文件(.CLS)当导入已存在的元素时,新添加到当前工程中的是原文件的副本,对导入元素的修改不会影响到原始文件导入元素的方法是在菜单“文件(F)”中选“导入文件(I)...”项,打开“导入文件”对话框,选择需要的文件即可导入后,即显示在“工程”窗口中6.编辑元素1) 使用窗体编辑器在窗体编辑器中,用户可以进行应用程序界面的设计可通过“工程”窗口中选择要编辑的窗体,再选择菜单“视图(V)”|“对象窗口(B)”,将窗口编辑器切换出来(也可点击“工程” 窗口左上角的“查看对象”按钮)。

      接下来即可编辑窗体及其上面控件的属性2) 使用代码编辑器在代码编辑器中,用户可以进行代码的编辑可通过“工程”窗口中选择要编辑的模块,再选择菜单“视图(V)”|“代码窗口(C)”,将代码窗口切换出来(也可点击“工程” 窗口左上角的“查看代码”按钮)接下来即可编辑事件过程的代码7.设置VBA IDE选项选择“工具(T)”|“选项(O)...”调出“选项”对话框,如图1-5所示应用该对话框可以设置VBA IDE的环境特征它包括四个选项卡,其内容分别为:“编辑器”、“ 编辑器格式”、“通用”和“可连接的”比如,利用“通用”选项卡,用户可以设置在设计状态下是否显示窗体上的网格,设置网格大小以及控件是否与网格对齐又如利用“编辑器” 选项卡设定是否强制《要求变量声明》图1-5 VBA IDE的“选项”对话框1.2.4宏及其管理1.“宏“对话框从 AutoCAD 的菜单“工具(T)”|“宏(A)” |“。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.