电脑技术学习

AutoCAD中使用VBA创建应用程序

dn001
本章主要介绍了AutoCAD ActiveX和VBA的概念和作用,并通过一个简单的实例讲述了在AutoCAD系统中开发VBA程序的过程。
;;;;实例1 最简单的VBA程序—“Hello.dvb
;;;;Step 1 创建新文件
;;;;运行AutoCAD 2002系统,以“acadiso.dwt为样板创建图形文件,并调用“vbaide命令进入VBA环境;
;;;;Step 2 创建窗体
;;;;(1) 选择菜单【Insert(插入)】→【UserForm(用户窗体)】,编辑器将创建一个新的窗体,并显示在窗体窗口中。选择该窗体,然后在属性窗口中将“Caption项改为“Draw Text。
;;;;(2) 在控件工具箱中单击 按钮,并在窗体的适当位置拖动鼠标,创建一个编辑框控件。
;;;;(3) 在控件工具箱中单击 按钮,并在窗体的适当位置拖动鼠标,创建一个按钮控件。选择该控件后,在属性窗口中将“Caption项改为“Click。
;;;;创建结果参见图37-6。


;;;;Step 3 编写代码
;;;;(1) 在窗体窗口中双击按钮控件,编辑器显示代码窗口,并提示用户输入代码,如图37-7所示。代码清单如下:
;;;;Private Sub CommandButton1_Click()
;;;;Dim TextObj As AcadText '定义文字对象变量
;;;;Dim TextString As String '定义字符串变量
;;;;Dim InsPnt(0 To 2) As Double '定义文字插入点数组变量
;;;;Dim Height As Double '定义文字高度变量
;;;;TextString = TextBox1.Text '字符串取值为编辑框中输入的文字
;;;;'指定文字插入点位置和文字高度
;;;;InsPnt(0) = 100: InsPnt(1) = 100: InsPnt(2) = 0
;;;;Height = 15
;;;'在模型空间创建文字对象
;;;;Set TextObj = ThisDrawing.ModelSpace.AddText(TextString, InsPnt, Height)
;;;;TextObj.Color = acGreen '指定文字对象的颜色为绿色
;;;;ZoomAll '缩放视图
;;;;Unload Me '关闭窗体
;;;;End Sub

;;;;(2) 单击“Standard(标准)工具栏中的 按钮,以“Hello.dvb为名保存该文件。
;;;;Step 4 运行VBA程序
;;;;(1) 单击“Standard(标准)工具栏中的 按钮运行该程序,系统将切换到AutoCAD窗口,并显示如图37-8所示的对话框。用户可在该对话框的编辑框中输入“Hello, VBA!,并单击按钮,则将在当前图形中创建文字对象,结果如图37-9所示。

;;;;实例说明
;;;;如果用户退出VBA环境并返回AutoCAD系统窗口,则需要对该程序进行加载后才能运行。加载VBA程序的方式有如下几种:
;;;;1. 选择菜单【Tools(工具)】→【Load Appcation…(加载应用程序)】,弹出“Load/Unload Applications(加载/卸载应用程序)对话框。利用该对话框进行加载的过程与加载LISP程序相同。
;;;;2. 选择菜单【Tools(工具)】→【Macro(宏)】→【Load Project…(加载工程)】,弹出“Open VBA Project(打开VBA工程)对话框,用户可选择“Hello.dvb文件并单击Open按钮进行加载。
;;;;3. 选择菜单【Tools(工具)】→【Macro(宏)】→【VBA Manager…(VBA管理器)】,弹出“VBA Manager(VBA管理器)对话框,如图37-10所示。

;;;;该对话框中的“Drawing(图形)下拉列表中显示了加载的所有图形文件。对于该列表中指定的图形文件,“Projects(工程)列表显示了该文件中已加载的VBA程序,用户可单击 按钮载入其他的VBA程序。