VBA 通过 AutoCAD ActiveX Automation 接口将消息发送到 AutoCAD。AutoCAD VBA 允许 VBA 环境与 AutoCAD 同时运行,并通过 ActiveX Automation 接口对 AutoCAD 进行编程控制。AutoCAD、ActiveX Automation 和 VBA 的这种结合方式不仅为操作 AutoCAD 对象,而且为向其他应用程序发送或检索数据提供了功能极为强大的接口。
在 AutoCAD 中有三个定义 AcitveX 和 VBA 编程的基本元素。第一个是 AutoCAD 本身,它拥有一个丰富的对象集,其中封装了 AutoCAD 图元、数据和命令。因为 AutoCAD 是一个设计为具有多层接口的开放架构应用程序,因此熟悉 AutoCAD 编程功能对于有效使用 VBA 来说是非常必要的。如果以前使用过 AutoLISP 编程来控制 AutoCAD,就应该对 AutoCAD 工具有一定的了解。然而,VBA 的基于对象的处理方式和 AutoLISP 的方式却很不一样。
第二个元素是 AutoCAD ActiveX Automation 接口,它建立与 AutoCAD 对象的消息传递(通讯)。在 VBA 中编程需要对 ActiveX Automation 有基本的了解。《ActiveX and VBA Reference》中介绍了 AutoCAD ActiveX Automation 接口。即使是有经验的 VB 编程人员也会发现要理解和开发 AutoCAD VBA 应用程序,AutoCAD ActiveX Automation 接口是非常重要的。
第三个元素是 VBA 编程环境,它具有自己的对象集、关键字和常量等,能提供程序流、控制、调试和执行等功能。AutoCAD VBA 帮助包含 Microsoft VBA 扩展帮助,可以通过以下方法从 VBA IDE 中对其进行访问:
- 按键盘上的 F1 键
- 从 VBA IDE 菜单栏中选择“帮助”
- 单击 VBA IDE 工具栏上的“?”图标