wensent 发表于 2004-6-3 21:35:00

新手紧急求教1!!!!!!!!!

我现在要做一个CAD二次开发的设计,要求达到的效果大致是单击一个按钮,根据输入的不同的参数自动生成一个相应的CAD图形。
VB的部分我已完全做好,现在与CAD的连接我要用VBA作。请问编写相应的VBA程序是在VB中(引用CAD2002的aczd.tlb类型库的前提下)编写,还是在CAD的宏中的VB编辑器之中编写???????
另外,我是新手,希望高手帮忙和交流,我的qq:120664021 ,wensent。请高手留下qq好吗!!!!!我经常看L斑竹在坛上,L斑竹能否告诉我你的QQ,我有问题的话好请教兄弟!!!!!!!!!
谢谢!!!!!!!!!!!

雪山飞狐_lzh 发表于 2004-6-3 21:39:00

在CAD的宏中的VB编辑器之中编写
不过VBA不需与CAD的连接,因为它只能存在于CAD中

wensent 发表于 2004-6-3 21:42:00

那我怎样才能实现要求达到的效果大致是单击一个按钮,根据输入的不同的参数自动生成一个相应的CAD图形??????
前提是CAD没有打开!!!!!

wensent 发表于 2004-6-3 21:49:00

另外,哪位高手能留下QQ啊!!!!!发贴太慢!!!!!!!
L斑竹留下QQ啊!!!!!!!!!!!

雪山飞狐_lzh 发表于 2004-6-3 21:49:00

VB也不能脱离AutoCad,下面是VB打开并获取AutoCad的Application对象的常用手段Set AcadApp = GetObject(, "AutoCAD.Application")
If Err Then       Set AcadApp = CreateObject("AutoCAD.Application")
AcadApp.Visible = True
不过学习这东西最好还是看帮助,有VB的底子学VBA不难

wensent 发表于 2004-6-3 22:04:00

我知道在VB的环境下自动打开一个CAD,可是我在VB的环境下,对一个COMMAND1按钮的程序代码写下:
Private Sub Command1_Click()
Dim acdApp As New AcadApplication
                       acdApp.Visible = True
               
Dim startPoint(0 To 2) As Double, endPoint(0 To 2) As Double
Dim LineObj As AcadLine
startPoint(0) = 0: startPoint(1) = 0: startPoint(2) = 0
endPoint(0) = 30: endPoint(1) = 20: endPoint(2) = 0
Set LineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)
End Sub
结果自动生成一个CAD窗口,并报错,大意是Set LineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)是没定义的?????
请问怎没拉???怎样自动打开CAD并画一条线啊!!!!??????

雪山飞狐_lzh 发表于 2004-6-3 22:09:00

ThisDrawing当然未定义
用set ThisDrawing=acdApp.ActiveDocument再调用
Set LineObj = ThisDrawing.ModelSpace.AddLine(startPoint, endPoint)

wensent 发表于 2004-6-3 22:37:00

谢谢兄弟!!!!搞定了!!!!
恳请兄弟留下qq!!!!!!!!!我还有N个问题,慢慢钻研中,要请教兄弟!!!!!

雪山飞狐_lzh 发表于 2004-6-3 22:42:00

你可以在3626255群里找到我

wensent 发表于 2004-6-3 22:54:00

谢谢兄弟,我已经加了,提出申请,还没有得到回复!!!!
页: [1]
查看完整版本: 新手紧急求教1!!!!!!!!!