明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2056|回复: 9

通过按钮关闭AUTOCAD?

[复制链接]
发表于 2005-4-17 10:43:00 | 显示全部楼层 |阅读模式
AutoCAD中,无模式对话框上的按钮关闭,点击把AUTOCAD关闭,该如何作啊?


AUTOCAD直接关闭,默认是"不保存",不要再选择什么"是否要保存"的对话框了!


高手指教!!!
发表于 2005-4-21 09:46:00 | 显示全部楼层
用IDocument的close()方法就可以实现........................
 楼主| 发表于 2005-4-24 10:12:00 | 显示全部楼层
我不大清楚你说的这个,能详细的说一下吗?


谢谢

发表于 2005-4-25 16:34:00 | 显示全部楼层
IDocument 是CAD的一个接口,利用这个接口的方法close()可以实现 IDocument IDoc; IDoc.AttachDispatch(IApp.get_ActiveDocument());
IDoc->close(vFull,vNull);
 楼主| 发表于 2005-4-25 19:17:00 | 显示全部楼层
这个IDocument用的时候需要什么头文件吗?


编译时不认啊!!
发表于 2005-4-26 19:27:00 | 显示全部楼层
用类向导->Add         Class按钮->From a type libraly....


选择CAD2002安装目录下的acad.tlb


-> 选择IAcadApplication,IAcadDocument,IAcadDocuments等(可以根据自己需要添加接口)


->得到acad.h         acad.cpp2个文件,然后#include "acad.h" 就可以用了。
 楼主| 发表于 2005-4-27 09:36:00 | 显示全部楼层
我改成这样的 IAcadDocument IDoc,IApp;
IDoc.AttachDispatch(IApp.get_ActiveDocument());
IDoc->close(vFull,vNull); 可是还是出错啊,梦幻神话高手帮我看看!! 错误是: Compiling...
XiTong.cpp
F:\haohuibin\testarx\XiTong.cpp(288) : error C2039: 'get_ActiveDocument' : is not a member of 'IAcadDocument'
f:\haohuibin\testarx\acad.h(5) : see declaration of 'IAcadDocument'
F:\haohuibin\testarx\XiTong.cpp(289) : error C2819: type 'IAcadDocument' does not have an overloaded member 'operator ->'
f:\haohuibin\testarx\acad.h(5) : see declaration of 'IAcadDocument'
F:\haohuibin\testarx\XiTong.cpp(289) : error C2227: left of '->close' must point to class/struct/union
F:\haohuibin\testarx\XiTong.cpp(289) : error C2065: 'vFull' : undeclared identifier
F:\haohuibin\testarx\XiTong.cpp(289) : error C2065: 'vNull' : undeclared identifier
Error executing cl.exe. cadittestarx.arx - 5 error(s), 0 warning(s)
发表于 2005-4-27 10:13:00 | 显示全部楼层
1、如果你用的是VC6.0 的话: IDoc.AttachDispatch(IApp.GetActiveDocument()); IDoc->Close(vFull,vNull); 2、接口要用到变体 首先定义: COleVariant vNull(""),
vTrue((short)TRUE),
vFull((short)FALSE);
发表于 2005-4-27 11:43:00 | 显示全部楼层
这个IAcad是给别的程序用的OLE包装类啊, 在CAD里面自己用自己的OLE..-__-


而且这似乎是关闭文件不保存, 不是关闭整个CAD程序不保存啊..


直接结束CAD的话在按钮上用Win API的::ExitProcess()就好了吧..
 楼主| 发表于 2005-4-27 16:20:00 | 显示全部楼层
谢谢上面两位大侠!!!!OK
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 06:30 , Processed in 0.269540 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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