如何用代码控制CAD打开时的dwt模板
<p>我自已做了一个dwt模板,想让程序执行打开CAd时选用这个模板,请高手指教如何可以实现。</p> <a href="http://www.mjtd.com/object/acad2004/idh_add.htm">http://www.mjtd.com/object/acad2004/idh_add.htm</a> <p>没看明白</p><p>Public Sub CADConnect() <br/>On Error Resume Next<br/>Set Obj_Acad = GetObject(, "autocad.application")<br/>If Err Then<br/> Err.Clear<br/> On Error Resume Next<br/> Set Obj_Acad = CreateObject("autocad.application")<br/> If Err Then<br/> Err.Clear<br/> MsgBox "不能运行AutoCAD,请检查是否安装!", vbOKCancel, "警告!"<br/> Exit Sub<br/> End If<br/>End If<br/>Obj_Acad.Visible = True<br/>Set Obj_Doc = Obj_Acad.ActiveDocument<br/>Set Obj_ModelSpace = Obj_Doc.ModelSpace</p><p>Bool = True<br/>Block_bool = False</p><p>End Sub</p><p>我这样打开的CAD都是CAD默认的acadiso.dwt</p><p>我是想用vb代码启动CAD,在每次启动时都启动我自己做的DWT(比如123.dwt),而不是CAD默认的acadiso.dwt。</p><p>能否给我一段代码参考一下。</p> <p>在这里设置一下不就行了</p><p></p><p>设置Preferences对象</p><p>把那个无 改成你的模板不就行了嘛</p> <p>能不能用代码在程序里做啊?</p><p></p> <p class="1-liner">设置Preferences对象</p><p class="1-liner">Application.preferences.Files.TemplateDwgPath</p><p class="1-liner">指定“启动”向导所使用样板文件的路径。</p><p class="Heading-2">语法 </p><p class="syntax">object.TemplateDWGPath </p><p class="element">object</p><p class="element-desc"><a href="mk:@MSITStore:F:\编程\作品\CAD二次开发\HELP\acadauto.chm::/idh_preferencesfiles_object.htm">PreferencesFiles</a><br/>使用该属性的对象。 </p><p class="element">TemplateDWGPath</p><p class="element-desc">String[字符串]; 可读写<br/>样板文件目录的驱动器名和路径。</p><p class="element-desc"></p> <pre class="Code">Sub Example_PageSetupOverridesTemplateFile()' 注意: 修改文件路径和名称为你系统中的有效文件。
Dim MyFiles As IAcadPreferencesFiles2
Set MyFiles = AcadApplication.Preferences.Files
MyFiles.PageSetupOverridesTemplateFile = "C:\MyTemplate.dwt"
End Sub</pre> <p class="1-liner">设置 QNEW 命令的默认样板文件名称。</p><p class="h1-access"><a href="mk:@MSITStore:F:\编程\作品\CAD二次开发\HELP\acadauto.chm::/QNewTemplate_see_also.htm">参阅</a> | <a href="mk:@MSITStore:F:\编程\作品\CAD二次开发\HELP\acadauto.chm::/ex_QNewTemplate.htm">示例</a></p><p class="Heading-2">语法 </p><p class="syntax">object.QNewTemplateFile </p><p class="element">Object</p><p class="element-desc"><a href="mk:@MSITStore:F:\编程\作品\CAD二次开发\HELP\acadauto.chm::/idh_preferencesfiles_object.htm">PreferencesFiles</a><br/>使用该属性的对象。 </p><p class="element">QNewTemplateFile</p><p class="element-desc">String[字符串]; 可读写<br/></p><p class="Heading-2">说明 </p><p class="body">该属性值控制用于 <a href="ms-its:acad161.chm::/QNEW.htm">QNEW</a> 命令的默认样板。要使用该属性,必须声明一个对象为 AcadPrefrencesFiles 对象。</p> <p>太感谢大家了</p><p>我试一下</p> 我用下面的代码打开的(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模板呢?
页:
[1]
2