EaBIM一直以来积极响应国家“十二五”推进建筑业信息化的号召,对建筑领域的信息技术开展深入技术交流和探讨!致力于打造“BIM-建筑师-生态技术”三位一体综合资源交流共享平台,希望为BIM与可持续设计理念及技术的普及做出微小的贡献!!!

EaBIM

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 838|回复: 0
打印 上一主题 下一主题

[用户交互] 如何启动指定的AutoCAD版本画图

[复制链接]

1514

主题

7465

帖子

1万

积分

admin

Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10

积分
12404

社区QQ达人

跳转到指定楼层
楼主
发表于 2014-1-8 14:07:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们画图的时候一般都是先用GetObject、CreateObject来连接或者启动CAD。但是如Set acadapp = GetObject(, "AutoCAD.Application")
Set acadapp = CreateObject("AutoCAD.Application")
之类的启动方式,只能启动默认的CAD版本,或者是已经打开的CAD版本画图,那怎么启动我们指定的版本呢?没错,就在"AutoCAD.Application"里面加上版本号就OK了。方法见如下:
1.先把安装在电脑中的版本都搜索出来:方法及图见http://hi.baidu.com/kakanimo/blog/item/22f6fed2185887d8a9ec9ac8.html
2.点击按钮的时候先判断选了哪个版本,然后动态设置"AutoCAD.Application"中启动的CAD版本号。
  1. Private Sub Command4_Click()
  2. Dim i As Integer
  3. For i = 0 To 13
  4.     If Option1(i).Value = True Then
  5.         Select Case i
  6.             Case 0 To 1
  7.                 '"AutoCAD 2002"
  8.                 class = "AutoCAD.Application.15"
  9.             Case 2 To 3
  10.                 ' "AutoCAD 2004"
  11.                 class = "AutoCAD.Application.16"
  12.             Case 4 To 5
  13.                 ' "AutoCAD 2005"
  14.                 class = "AutoCAD.Application.16.1"
  15.             Case 6 To 7
  16.                 '"AutoCAD 2006"
  17.                 class = "AutoCAD.Application.16.2"
  18.             Case 8 To 9
  19.                 '"AutoCAD 2007"
  20.                 class = "AutoCAD.Application.17"
  21.             Case 10 To 11
  22.                 ' "AutoCAD 2008"
  23.                 class = "AutoCAD.Application.17.1"
  24.             Case 12 To 13
  25.                 '"AutoCAD 2009"
  26.                 class = "AutoCAD.Application.17.2"
  27.         End Select
  28.         Exit For
  29.     End If
  30. Next
  31.     Call AcadOpen_2
  32. End Sub
  33. 各版本的版本号见上面代码中。下面就是连接代码,都已经注释的很详细了。
  34. Public Function AcadOpen_2()
  35.     Dim runing As Boolean '是否已经有运行的版本
  36.     runing = True '当它已经启动CAD了
  37.     On Error Resume Next '进行出错的处理
  38.     Set acadapp = GetObject(, class)
  39.     If Err Then '如果AutoCAD应用程序启动失败,进行下面的处理
  40.         Err.Clear
  41.         Set acadapp = CreateObject(class)
  42.         runing = False '原来没有启动,是新启动的CAD
  43.         If Err Then         '启动AutoCAD出错处理
  44.             MsgBox Err.Description
  45.         End If
  46.     End If
  47.     acadapp.Visible = True '设置cad可见
  48.     If runing = True Then '表明已经运行,就新建一个文档
  49.         acadapp.Documents.Add '增加一个文档
  50.     End If '新打开CAD,这个时候自动会增加一个文档,所以这里不需要加
  51.    
  52. End Function
  53. -----------------
复制代码
这样就连接上了指定的CAD啦。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对

相关帖子

工作时间:工作日的9:00-12:00/13:30-18:00,节假日不在线,请勿留言
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|EaBIM网 ( 苏ICP备2020058923号-1  苏公网安备32011502011255号

GMT+8, 2024-11-24 16:02

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

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