明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1287|回复: 8

小弟有一火急问题求助!后天就要交程序了!

[复制链接]
发表于 2004-5-11 16:26:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2004-5-11 16:52:04 编辑

AutoCAD2000 vba 编辑器 我用此接口打开文件(odin2d.dwg)后,就是没法对其进行编辑,连在上面画线都不行 之前已经定义 public Thisdrawing as Object 画线的语句是 Set tml1 = ThisDrawing.ModelSpace.AddLine(E1, E2) 期间的语句省略,定义和运算肯定都没问题,就是编辑不了已经打开的图,出错提示为"自动化错误" 不知是接口问题还是画线那句的问题,望不吝赐教! Sub loadcad2d()
Rem load CAD

On Error Resume Next
Set acadApp = GetObject("AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then
MsgBox Err.Description
Exit Sub
End If End If acadApp.Visible = True Set ThisDrawing = acadApp.ActiveDocument Dim dwgName As String
dwgName = "c:\odin\ff\odin2d.dwg"
If Dir(dwgName) <> "" Then
ThisDrawing.Application.Documents.Open dwgName
Else
MsgBox "File " & dwgName & " does not exist."

End If End Sub
发表于 2004-5-11 18:50:00 | 显示全部楼层
vba里定义ThisDrawing干什么?


GetObject和CreateObject也不能要
发表于 2004-5-11 19:16:00 | 显示全部楼层
对,vba中无需连接cad,直接画线就可以了。你可以参照help.
 楼主| 发表于 2004-5-11 19:33:00 | 显示全部楼层
不会吧,我把他们都去掉,就出现"对象定义块为设置"的错误,怎么办啊?
发表于 2004-5-11 19:38:00 | 显示全部楼层
Public Sub Test()
Dim dwgName As String
dwgName = "d:\1.dwg"
If Dir(dwgName) <> "" Then
Application.Documents.Open dwgName
Else
MsgBox "File " & dwgName & " does not exist."

End If
End Sub
 楼主| 发表于 2004-5-11 19:43:00 | 显示全部楼层
那画线的那条语句该怎么该啊,谢谢好心人的帮忙啊!
发表于 2004-5-11 20:08:00 | 显示全部楼层
你用的是AutoCAD 带的VBA还是VB 6?
发表于 2004-5-11 20:15:00 | 显示全部楼层
你E1和E2是怎么定义的.


必须得是


Dim E1(0 to 2) as Double


Dim E2(0 to 2) as Double


才行
 楼主| 发表于 2004-5-11 20:15:00 | 显示全部楼层
我已经搞定了,多谢各位的关心和帮助!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 06:29 , Processed in 0.181184 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表