我用VB对AutoCAD进行二次开发,想实现“复制,镜像,旋转”等命令,运行后总出现“要求对象”的424错误

Private Sub Command4_Click()
retval = object.Copy
End Sub
这个object怎么选取的?

你要进行操作的对象是什么呀
需要先进行选取
同VBA的方法一样
Dim sset As AcadSelectionSet
Dim Entry As AcadEntity
Set sset = ThisDrawing.SelectionSets.Add("DimNoDelcAllx1")
sset.SelectOnScreen

For Each Entry In sset
entry.copy
next

VB需要改下Thisdrawing追问

非常感谢你的回答,我是刚学不久的新手。我还想问下,在VB中这个Thisdrawing要怎么改?是CAD绘图窗口的名字么?麻烦举个实例!还有这句Set sset = ThisDrawing.SelectionSets.Add("DimNoDelcAllx1")
括号中的DimNoDelcAllx1是什么意思?
麻烦了,再次感谢您!

追答

确定引用CAd了,需要增加
Dim acadApp As AcadApplication
Dim acadDoc as AcadDocument
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then End
End If

然后把ThisDrawing改为acadApp.acadDoc

DimNoDelcAllx1没什么意思,随便例的,增加一个选集,选集的名字是"DimNoDelcAllx1"
用完在Next后面再将seet删掉,不然第二次会出错

温馨提示:内容为网友见解,仅供参考
无其他回答

我用VB对AutoCAD进行二次开发,想实现“复制,镜像,旋转”等命令,运行...
VB需要改下Thisdrawing

用VB做AutoCAD二次开发,程序运行时出现实时错误424,要求对象!但是这个...
可能是 Acaddoc 没定义吧 Public Acaddoc As AcadApplication Public ThisDrawing As AcadDocument

CAD软件怎么进行二次开发?CAD二次开发的操作教程
打开cad输入命令vbaide回车会出现VBA的编辑界面,双击ThisDrawing在右侧的代码区输入上面的代码。如下图:然后按F5键会出现宏窗口,点击运行,大家看到什么?这就是一个最简单的一个用VBA对cad进行二次开发的程序,也就是宏。那什么是VBA呢?VBA就是VB的一个子集它的全称是VisualBasicForApplication,它具...

VB引用AutoCAD部件是否先安装相应版本的AutoCAD?
总之,在进行VB与AutoCAD的二次开发时,关注的重点应是程序与目标AutoCAD版本之间的兼容性。确保选择适当的VB开发工具、库和API文档,以实现与目标AutoCAD版本的有效集成。通过遵循上述步骤,可以提高开发效率并确保项目成功。

谁能帮我编一段用VB对CAD进行二次开发的程序代码啊
Next i语句必须出现在需要结束循环的位置,不然程序没法运行。下面看画圆命令:Call ThisDrawing.ModelSpace.AddCircle(cc, i * 10)Call语句的作用是调用其他过程或者方法。ThisDrawing.ModelSpace是指当前CAD文档的模型空间AddCircle是画圆方法Addcicle方法需要两个参数:圆心和半径CC就是圆心坐标,i*10就是圆的半径,本例...

用VB调用Autocad中的VBA,能不能像VB自己的函数一样有编写提示?
一、 可以的,设置方法为先把AutoCad的对象模型搞懂 在Cad的帮助里有相关的内容 先打开Cad,然后运行下面的代码 Dim acadapp As Object Dim acaddoc As Object Dim mspace As Object Set acadapp = GetObject(, "autocad.application") Set acaddoc = acadapp.activedocument Set mspace = acaddoc....

vb.net程序添加了AutoCAD 2010 Type Library,但是还是出现AcadApplicat...
回答:在文件开头, Imports AutoCAD 即可

关于vb.net二次开发autocad,是否不用netload调用dll文件也可以_百度知 ...
你看到的调用DLL的应该是用的objectARX做的开发。你可以用ActiveX外部调用CAD啊~我是用的C#做的二次开发:System.Diagnostics.Process.Start("CAD文件路径");\/\/运行CAD AcadApplication _application= (AcadApplication)Marshal.GetActiveObject("AutoCAD.Application.16");\/\/获取正在运行的CAD程序实例 Acad...

AutoCADVBA&VB.NET开发 内容提要
本书分为两个章节,旨在探索AutoCAD的二次开发。第一部分着重讲解如何运用VBA和ActiveX技术对AutoCAD进行扩展,适合那些希望深入理解并利用这些技术的工程技术人员和研究人员。对于初学者,这将提供一个坚实的基础,因为国内关于VBA的教材相对有限。第二部分则引领读者进入.NET(可以选择VB.NET或C#语言)的世界...

AutoCAD的二次开发现在多用哪些语言
主要看开发的具体功能来选择用VB还是VBA来开发VB,VBA或其它工具如c#,C++等都是利用AutoCAD提供的ARX接口进行开发VB开发的程序相对独立,不能查看源码;运行速度一般;可能会因为CAD正在运行的命令或其它冲突!VBA必需集成于CAD之下,源代码可以被看到,运行速度快;运行错误率更低!AutoCAD 64版本,在安装...

相似回答