通道和交换数据的方法。
在 VB 中启动一个新项目,参见图(1)建立窗体,其中“建立链接”,“直线”,“标注”,“退出”为命令按钮,
标有“Text1”的为文本框,用于建立 DDE 通道,并输入下面的事件代码。
Option Explicit
Private Sub cmdLine_Click() '画直线
Text1.LinkExecute " [^3^3line 3,3 8,8 ^3]"
End Sub
Private Sub cmdText_Click() '标注文字
Text1.LinkExecute " [^3^3text 10,10 1 90 AUTOCAD!^10]"
End Sub
Private Sub cmdLink_click() '建立链接
Text1.LinkMode = 0
Text1.LinkTopic = "autocad.dde|system"
Text1.LinkMode = 2
End Sub
Private Sub cmdExit_click() '退出
End
End Sub
运行此应用程序,注意在运行前,一定要先加载 AutoCAD。单击“建立链接”按扭,cmdLink_Click()过程
被执行,执行时设置文本框 Text1 的 LinkTopic 和 LinkMode 的属性,完成 VB 应用程序与 AutoCAD 间 DDE 通
道的建立。LinkTopic 属性用于通知 AutoCAD 由谁来提供数据,它被管道符“|”分成两部分,第一部分
“AutoCAD.DDE”为应用程序名,第二部分“System”是通讯的主题。LinkMode 属性用于切实建立链接,在
LinkMode=0 时,表示关闭以前的 DDE 通道,在 LinkMode=2 时,表示以手动模式激活 DDE 通道。
在完成 DDE 链接后,VB 应用程序就可以与 AutoCAD 间进行数据交换或命令传送了。单击“直线”按扭,
cmdLine_Click()过程被执行,应用程序通过 LinkExecute 方法向 AutoCAD 发送命令,在 AutoCAD 中以点(3,3)和
(8,8)为端心,画一条直线。语句中的^3 相当于 AutoCAD 中的取消键 Ctrl+C,空格相当于 AutoCAD 中的回车键。
单击“标注”按扭,执行 cmdText_Click()过程,可在 AutoCAD 中显示以(10,10)为基点,高为 1,旋转角度为 90
的字符串“AutoCAD!”。语句中的^10 相当于 AutoCAD 中的回车键,在标注文字时不能用空格代替回车键。
根据需要,可用上面的方法传送 AutoCAD 的其它命令,实现对 AutoCAD 的开发。
二、通过调用 VB ADS 开发
上面介绍了在 VB 应用程序中直接利用 DDE 与 AutoCAD 作用实现开发的方法,此方法要求用户自己建立与
AutoCAD 间的 DDE 通道,此外,我们还可以通过调用 VB ADS 函数对 AutoCAD 进行开发。在 VB ADS 函数库
中已有专门的函数负责建立应用程序与 AutoCAD 间的 DDE 通道,而不需用户亲自建立,较为方便。另外,VB
应用程序还可以通过 VB ADS 函数向 AutoCAD 发送数据和命令,同时也可以利用 VB ADS 函数的返回值来获得
AutoCAD 的数据,实现对 AutoCAD 更深入的开发。
为了利用 AutoCAD 的 VB ADS 函数建立 VB 的应用程序,AutoCAD 提供了几个 VB ADS 支撑文件,这些
文件除 DDEBAS.EXE 和 ACADVB.DLL 存放在 C:\ACADWIN 子目录外,其余都存放在 C:\ACADWIN\VB\NEW
子目录中。文件如下:
1. DDEBAS.EXE-ADS/DDE 服务者,为保证 VB 于 AutoCAD 间正常通信,此命令必须首先在 AutoCAD 中
用 XLOAD 命令加载运行。
2. ACADVB.DLL-VB ADS 动态连接库,在运行 VB 应用程序前,应将其拷到 C:\WINDOWS\SYSTEM\子目
录下。
3. GLOBAL.BAS-VB ADS 应用程序中所需要使用的全局变量定义文件。
4. ADSFUNCS.BAS-VB ADS 函数库,可以在 VB 应用程序中直接调用。
5. ADSFUNCS.FRM-包含有应用程序和 AutoCAD 间建立 DDE 链接的窗体文件。 下面结合具体的例子,说
明利用 VB ADS 函数开发应用程序的方法。 [HJ] 启动 VB,打开 C:\ACADWIN\VB\NEW\NEWPROJ.MAK
评论0
最新资源