明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1919|回复: 6

在VB中如何判断一个文档是否被关闭??

[复制链接]
发表于 2003-4-25 18:16:00 | 显示全部楼层 |阅读模式
比如
Dim docNew=ACADDOCUMENT
Dim Documents=ACADDocuments
Set docNew=Documents.Add

docNew可能被用户关闭了
如果程序再对 docNew 进行操作的话就会出现错误

如何才能避免这样的错误呢?
发表于 2003-4-25 20:20:00 | 显示全部楼层

在Documents中查看各文件

发表于 2003-4-25 20:35:00 | 显示全部楼层

提供一个自定义个函数

如果文档关闭时,那么对文档的操作就会无效,即出错,那么我们可以试着操作,如果出错,表示文档已经无效了。下面的函数是用于判断一个文档是否有效。
参数:AcadDoc 文档对象
返回值:True 有效
Private Function DocumentAvailable(ByVal AcadDoc As AcadDocument) As Boolean
    DocumentAvailable = False
    Dim Name As String
   
    On Error GoTo ErrTrap
    Name = AcadDoc.Name
    DocumentAvailable = True
    Exit Function
   
ErrTrap:
    On Error GoTo 0
End Function
 楼主| 发表于 2003-4-27 12:39:00 | 显示全部楼层

谢谢两位斑竹,可如何判断AutoCAD是否被关闭了呢?

两位斑竹的方法都可行
可是如何判断AutoCAD是否被关闭了呢?
 楼主| 发表于 2003-4-27 16:57:00 | 显示全部楼层

两位斑竹,你们的方法对于AcadDocument可行,但对于AcadApplication好象都不可行!

两位斑竹,你们的方法对于AcadDocument可行,但对于AcadApplication好象都不可行!![br]本来以为 efan2000 的方法对于AcadApplication对象也是可行的
可是试了以后发现不行(意外!!)
发表于 2003-4-27 21:38:00 | 显示全部楼层

一样的,可以吧。

参数:AcadApp 应用程序对象
返回值:True 有效
Private Function ApplicationAvailable(ByVal AcadApp As AcadApplication) As Boolean
    ApplicationAvailable = False
    Dim Caption As String
     
    On Error GoTo ErrTrap
    Caption = AcadApp.Caption
    ApplicationAvailable = True
    Exit Function
     
ErrTrap:
    On Error GoTo 0
End Function
 楼主| 发表于 2003-4-28 08:48:00 | 显示全部楼层

呵呵,不好意思,的确可以,是我写错了!!

再次感谢两位斑竹!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 16:35 , Processed in 0.242744 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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