liub1979 发表于 2004-7-8 13:51:00

VB 调用AUTOCAD问题

Public AcadApp As AcadApplication<BR>Public AcadPre As AcadPreferences<BR>Public AcadDoc As AcadDocument<BR>Public AcadPaS As AcadPaperSpace<BR>Public AcadMoS As AcadModelSpace


Public Sub test()


On Error Resume Next<BR>Set AcadApp = GetObject("AutoCAD.Application")<BR>If Err Then<BR>               Err.Clear<BR>               Set AcadApp = CreateObject("AutoCAD.Application")<BR>               If Err Then<BR>                                       MsgBox "err!" &amp; Err.Description<BR>                                       Exit Sub<BR>               End If<BR>End If


Set AcadPre = AcadApp.Preferences<BR>Set AcadDoc = AcadApp.ActiveDocument<BR>Set AcadPaS = AcadDoc.PaperSpace<BR>Set AcadMoS = AcadDoc.ModelSpace


Set sset AS AcadDoc.ActiveSelectionSet


Set        ssnew = AcadApp.SelectionSets.Add("ss")


ssnew.Clear<BR>ssnew.SelectOnScreen


                       MsgBox "The layers in this drawing are: "        &amp; ssnew.Count<BR>                                                                               


End Sub<BR>好象不行呐^_^


        初学者不知VB如何调用AUTOCAD请斑竹指教……


雪山飞狐_lzh 发表于 2004-7-8 14:02:00

你要获取层应该用


AcadDoc.Layers.Count

liub1979 发表于 2004-7-8 20:07:00

谢谢飞哥.^_^


我是VB初学者,请问ACAD.TLB和AXAUTO15.TLB是做什么用的?


我的程序改了可还有问题,望大哥指点一二


       

wylong 发表于 2004-7-9 10:04:00

Set AcadApp = GetObject("AutoCAD.Application")


应该为


Set AcadApp = GetObject(,"AutoCAD.Application")


别忘记引用Excel支持库


        见下图

雪山飞狐_lzh 发表于 2004-7-9 11:10:00

引用Excel干什么?

hillak 发表于 2004-7-10 08:54:00

我觉得调用Access好用一点


我做了一个道路线性设计的工具用的Access,不错


不过,还不能完成标注这项功能,请执教!

liub1979 发表于 2004-7-11 18:26:00

thank you
页: [1]
查看完整版本: VB 调用AUTOCAD问题