乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 132|回复: 8

如何用代码控制CAD打开时的dwt模板

[复制链接]

10

主题

23

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
63
发表于 2009-11-19 15:28:00 | 显示全部楼层 |阅读模式
我自已做了一个dwt模板,想让程序执行打开CAd时选用这个模板,请高手指教如何可以实现。
回复

使用道具 举报

10

主题

23

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
63
发表于 2009-11-20 14:56:00 | 显示全部楼层
没看明白
Public Sub CADConnect()        
On Error Resume Next
Set Obj_Acad = GetObject(, "autocad.application")
If Err Then
   Err.Clear
   On Error Resume Next
   Set Obj_Acad = CreateObject("autocad.application")
   If Err Then
      Err.Clear
      MsgBox "不能运行AutoCAD,请检查是否安装!", vbOKCancel, "警告!"
      Exit Sub
      End If
End If
Obj_Acad.Visible = True
Set Obj_Doc = Obj_Acad.ActiveDocument
Set Obj_ModelSpace = Obj_Doc.ModelSpace
Bool = True
Block_bool = False
End Sub
我这样打开的CAD都是CAD默认的acadiso.dwt
我是想用vb代码启动CAD,在每次启动时都启动我自己做的DWT(比如123.dwt),而不是CAD默认的acadiso.dwt。
能否给我一段代码参考一下。
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2009-11-22 14:43:00 | 显示全部楼层
在这里设置一下不就行了

1plkmelp0st.JPG

1plkmelp0st.JPG


设置Preferences对象
把那个无 改成你的模板不就行了嘛
回复

使用道具 举报

10

主题

23

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
63
发表于 2009-11-23 21:00:00 | 显示全部楼层
能不能用代码在程序里做啊?
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2009-11-23 23:00:00 | 显示全部楼层
设置Preferences对象
Application.preferences.Files.TemplateDwgPath
指定“启动”向导所使用样板文件的路径。
语法
object.TemplateDWGPath
object
使用该属性的对象。
TemplateDWGPath
String[字符串]; 可读写
样板文件目录的驱动器名和路径。
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2009-11-23 23:03:00 | 显示全部楼层
Sub Example_PageSetupOverridesTemplateFile()
' 注意: 修改文件路径和名称为你系统中的有效文件。
        
        Dim MyFiles As IAcadPreferencesFiles2
        Set MyFiles = AcadApplication.Preferences.Files
        MyFiles.PageSetupOverridesTemplateFile = "C:\MyTemplate.dwt"
End Sub
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2009-11-23 23:05:00 | 显示全部楼层
设置 QNEW 命令的默认样板文件名称。
|
语法
object.QNewTemplateFile
Object
使用该属性的对象。
QNewTemplateFile
String[字符串]; 可读写
说明
该属性值控制用于  命令的默认样板。要使用该属性,必须声明一个对象为 AcadPrefrencesFiles 对象。
回复

使用道具 举报

10

主题

23

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
63
发表于 2009-11-25 08:38:00 | 显示全部楼层
太感谢大家了
我试一下
回复

使用道具 举报

6

主题

18

帖子

2

银币

初来乍到

Rank: 1

铜币
42
发表于 2011-1-27 08:46:00 | 显示全部楼层
我用下面的代码打开的(vb2008):
'连接CAD并打开dwt模板
    Public Sub GetCadwithdwtfrw(ByVal opendwt As Boolean, ByVal dwtpath As String)
        Try
            AcadApp = GetObject("autocad.application")
        Catch ex As Exception
            Try
                AcadApp = CreateObject("autocad.application")
            Catch ex1 As Exception
                MsgBox("无法打开AutoCAD")
                Exit Sub
            End Try
        End Try
        AcadApp.Visible = True
        AppActivate(AcadApp.Caption)
        AcadApp.Documents.Close()   '关闭cad文档
        AcadApp.Documents.Add(dwtpath)  '打开dwt模板
        ThisDrawing = AcadApp.ActiveDocument
    End Sub
但是又有这样一个问题,我的dwt模板是cad2007下另存的,昨天在别人的机子上试的时候(他用的是cad2006),发现打开后我设置的图层,文字样式等都没有了,是不是06打不开高版本的dwt?那么我如何做才能让所有版本的cad都能打开已经设置好的dwt模板呢?
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-1 03:24 , Processed in 0.815272 second(s), 73 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表