一、必不可少的对象引用
使用activex需要在项目属性中勾选以下两个引用,若找不到,则浏览定位直接添加下面两个文件,可以看到位于cad的安装路径下,图中的3个mgd.dll也可以勾选。
C:\Program Files\Autodesk\AutoCAD 2024\Autodesk.AutoCAD.Interop.dll
C:\Program Files\Autodesk\AutoCAD 2024\Autodesk.AutoCAD.Interop.Common.dll
二、新建一个窗体和按钮,并在代码窗口,输入如下代码
Imports Autodesk.AutoCAD.Interop
Imports Autodesk.AutoCAD.Interop.Common
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim ta As New AcadApplication'定义并实例化一个cad对象,会在后台启动cad
dim aLin As AcadLine, ms As AcadModelSpace'定义一个直线和模型空间对象
Dim pt1(0 To 2) As Double'定义起终点数组
Dim pt2(0 To 2) As Double
pt1(0) = 0 : pt1(1) = 0 : pt1(2) = 0'给起终点数组赋值
pt2(0) = 10 : pt2(1) = 10 : pt2(2) = 0
ta.Visible = True'显示cad窗口
ta.ActiveDocument.Utility.Prompt("hello cad")'命令行显示提示信息
ms = ta.ActiveDocument.ModelSpace'获取当前模型空间
aLin = ms.AddLine(PT1, PT2)'在当前模型空间创建一条直线
End Sub
End Class
先引用cad定义文件,再用New关键字实例化,属于先期绑定,也可用getobject()和createobject()进行后期绑定,具体哪种可根据需要调整。
程序运行结果如下,当然这只是一个非常基本非常简单的框架,随后可以在此基础上按需添加更多的代码实现更多的功能!