明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1134|回复: 2

vb调用AUTOCAD问题

[复制链接]
发表于 2011-4-19 10:14:12 | 显示全部楼层 |阅读模式
Public Sub AutoCADConnect()
On Error Resume Next
Set AcadApp = GetObject(, "autocad.application")
If Err Then
   Set AcadApp = CreateObject("autocad.application")
   Err.Clear
   If Err Then
      MsgBox "请检查是否正确安装AutoCAD", vbOKOnly, "提示!"
      Err.Clear
      Exit Sub
   End If
End If
actCAD = True
AcadApp.Visible = True
AcadApp.WindowState = acMax
End Sub
这是一个模块
然后在command1——click中调用!!
为什么总是开机后第一次点击,总是不行,老是提示“部件挂起”,然后等没提示的时候,在点一次,就可以了??
不明白啊
如果把调用代码直接放到command1——click,就是不用模块,就可以正常使用
求高手解答!!!
发表于 2011-4-19 19:00:07 | 显示全部楼层
首先你的程序有点小问题
Public Sub AutoCADConnect()
On Error Resume Next
Set AcadApp = GetObject(, "autocad.application")
If Err Then
   err.clear     【所以请移到这里来】
   Set AcadApp = CreateObject("autocad.application")
   Err.Clear    【如果在这里清空err那么就永远不会提示"请检查是否正确安装AutoCAD", 】
   If Err Then
      MsgBox "请检查是否正确安装AutoCAD", vbOKOnly, "提示!"
      Err.Clear
      Exit Sub
   End If
End If
actCAD = True
AcadApp.Visible = True
AcadApp.WindowState = acMax
End Sub
本来怀疑是AcadApp.WindowState = acMax的问题,但你说在click事件里没问题
那么就是其他地方问题,可能是在你启动CAd的时候,又向CAD发送命令进行操作
这样就会导致部件挂起
 楼主| 发表于 2011-4-20 12:06:43 | 显示全部楼层
回复 chmenf087 的帖子

谢谢了,很有道理!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 21:15 , Processed in 0.169461 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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